96 lines
2.6 KiB
HTML
96 lines
2.6 KiB
HTML
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||
|
<html>
|
||
|
<head>
|
||
|
|
||
|
<title>Test Dijit Internal Event: "ondijitclick"</title>
|
||
|
|
||
|
<script type="text/javascript" src="../../dojo/dojo.js" djConfig="isDebug: true, parseOnLoad: true"></script>
|
||
|
<script type="text/javascript">
|
||
|
dojo.require("doh.runner");
|
||
|
dojo.require("dijit._Widget");
|
||
|
dojo.require("dojo.parser");
|
||
|
|
||
|
dojo.declare("dijit.WidgetWithOndijitclick",
|
||
|
dijit._Widget,
|
||
|
{
|
||
|
clickCount: 0,
|
||
|
_onClick: function() {
|
||
|
this.clickCount++;
|
||
|
},
|
||
|
postCreate: function() {
|
||
|
this.connect(this.domNode, "ondijitclick", "_onClick");
|
||
|
}
|
||
|
}
|
||
|
);
|
||
|
|
||
|
dojo.addOnLoad(function(){
|
||
|
doh.register("ondijitclick",
|
||
|
[
|
||
|
{
|
||
|
name: "ondijitclick fires once on a space-key-up",
|
||
|
runTest: function(t){
|
||
|
var w = dijit.byId("widget1");
|
||
|
if (dojo.isSafari){ // safari has error
|
||
|
this.name += " * SKIPPED *";
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
// simulate space up
|
||
|
if (document.createEvent){
|
||
|
var e = document.createEvent("KeyboardEvent");
|
||
|
e.initKeyEvent("keyup",true,true,null,false,false,false,false,32,0);
|
||
|
w.domNode.focus();
|
||
|
w.clickCount = 0;
|
||
|
w.domNode.dispatchEvent(e);
|
||
|
t.is(1, w.clickCount);
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
name: "ondijitclick fires once on an enter-key-down",
|
||
|
runTest: function(t){
|
||
|
var w = dijit.byId("widget1");
|
||
|
if (dojo.isSafari){ // safari has error
|
||
|
this.name += " * SKIPPED *";
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
// simulate enter down
|
||
|
if (document.createEvent && !dojo.isSafari){
|
||
|
var e = document.createEvent("KeyboardEvent");
|
||
|
e.initKeyEvent("keydown",true,true,null,false,false,false,false,13,0);
|
||
|
w.domNode.focus();
|
||
|
w.clickCount = 0;
|
||
|
w.domNode.dispatchEvent(e);
|
||
|
t.is(1, w.clickCount);
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
name: "ondijitclick fires once on a mouse click",
|
||
|
runTest: function(t){
|
||
|
var w = dijit.byId("widget1");
|
||
|
|
||
|
// simulate enter up
|
||
|
if (document.createEvent){
|
||
|
var e = document.createEvent("MouseEvents");
|
||
|
e.initMouseEvent('click', true, true, document.defaultView, 1, 0, 0, 3, 3, false, false, false, false, 0, w.domNode);
|
||
|
w.clickCount = 0;
|
||
|
w.domNode.dispatchEvent(e);
|
||
|
t.is(1, w.clickCount);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
]
|
||
|
);
|
||
|
doh.run();
|
||
|
});
|
||
|
|
||
|
</script>
|
||
|
</head>
|
||
|
<body class="tundra">
|
||
|
<div id="widget1" dojoType="dijit.WidgetWithOndijitclick"></div>
|
||
|
</body>
|
||
|
</html>
|