JavaScript觸發HTML元素事件的代碼分析

很簡單,你要觸發什麼事件直接調用那個事件即可,以下代碼兼容所有主流瀏覽器。

<html>
    <select id="s1" onchange="ff(this,5)" onclick="ff(this,50)">
        <option value="1">A</option>
        <option value="2" selected>B</option>
    </select>
    <script>
    function ff(i,k){
      alert(i.value*k)
    }
    s1.onchange();//在各大瀏覽器均可使用,s1.onchange()不可以寫成s1.change()
    s1.onclick();//在各大瀏覽器均可使用,s1.onclick()也可以寫成s1.click()
    </script>
</html>

不要用什麼createEvent、initEvent、dispatchEvent事件三連。

也不要用這個不好使的fireEvent。

當然,最好的解決方法是,手動調用一下事件裡的方法,如把s1.onchange();換成ff(this,5),把s1.onclick();換成ff(this,50)。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *