方法一頁 | 二頁 | 三頁 | 四頁 | 五頁 | 六頁 | 七頁 | 八頁
操控器一頁 | 二頁 | 成員表
Firefox, Safari, Chrome 使用 dispatchEvent() 模擬元素發生事件。其語法是:
元素物件.dispatchEvent( 事件物件 )
事件物件要先用 createEvent() 建立;然後用 event 方法設定值。
IE 使用 fireEvent() 模擬元素發生事件。其語法是:
元素物件.fireEvent(事件類型 [, 事件物件])
事件類型用來指定事件,請參考 attachEvent 的說明。可以選擇性的加上事件物件,預設是 event 物件。
- 程式用法:
<script type='text/javascript'>
function createEventDM()
{
var eo=document.getElementById("dpv");
if( eo.dispatchEvent == undefined )
{
eo.fireEvent("onclick", event);
}
else
{
var vo = document.createEvent("MouseEvents");
vo.initMouseEvent("click", true, true, window,
0, 11, 22, 0, 0, false, false, false, false, 0, null);
eo.dispatchEvent( vo );
}
}
</script>
<a href='javascript:createEventDM()'>點此模擬點擊右邊元素</a> //
<span id='dpv' onclick='alert( event.screenX +"/"+ event.screenY )'>別點我</span> - 執行結果:
點此模擬點擊右邊元素 // 別點我
自當下元素移開鍵盤焦距。
- 程式用法:
<script type='text/javascript'>
function blurDM()
{
var eo = document.getElementById('blr');
eo.blur();
}
</script>
<input id='blr' size=16
ondblclick='blurDM()' value='雙擊滑鼠會失焦' /> - 執行結果:
模擬滑鼠點擊當下元素。在 Firefox, Safari, Chrome 只限用於 INPUT 元素的 button, checkbox, radio, reset, submit 等型態。在 IE 則可用在大部分元素。
- 程式用法:
<script type='text/javascript'>
function clickDM()
{
var eo = document.getElementById('knk');
eo.click();
}
//<span id='knk' onclick='alert("誰在敲門?")' >家門口</span>
</script>
<a href='javascript:clickDM()'>點此模擬敲擊下面元素</a><p>
<input type=checkbox id='knk' onclick='alert("誰在敲門?")' /> - 執行結果:
鍵盤焦距移到當下元素。
- 程式用法:
<script type='text/javascript'>
function focusDM()
{
var eo = document.getElementById('fcs');
eo.focus();
}
</script>
<a href='javascript:focusDM()'>點此鍵盤聚焦下面元素</a><p>
<input size=16 id='fcs' /> - 執行結果: