jQuery触发器点击不在IE中工作

时间:2013-01-08 19:11:28

标签: javascript jquery internet-explorer-8

以下适用于Chrome和HTML - 它会在页面加载时点击五个单独的元素。 IE8不会抛出任何错误,但Click事件不会发生。任何建议将不胜感激。

<script>
    window.onload = function(){
    $(document).ready(function(){ 
    var1=document.getElementById("agencyautoclick")
    $(var1).trigger('click');
    var2=document.getElementById("scaleautoclick")
    $(var2).trigger('click');
    var3=document.getElementById("modeautoclick")
    $(var3).trigger('click');
    var4=document.getElementById("infrastructureautoclick")
    $(var4).trigger('click');
    var5=document.getElementById("topicsautoclick")
    $(var5).trigger('click');
    });
    }
</script>

我最初没有使用jQuery(只是使用.click()),但这在IE8中再次无效。

2 个答案:

答案 0 :(得分:3)

你写的所有内容都与:

相同
<script>
$(document).ready(function(){ 
  $('#agencyautoclick').trigger('click');
  $('#scaleautoclick').trigger('click');
  $('#modeautoclick').trigger('click');
  $('#infrastructureautoclick').trigger('click');
  $('#topicsautoclick').trigger('click');
});   
</script>

你没有利用jQuery =)

答案 1 :(得分:2)

不要做

var1=document.getElementById("agencyautoclick")
$(var1).trigger('click');

DO

var $var1 = $('#agencyautoclick');

// OR

var $var1 = document.getElementById('agencyautoclick');

并且不要忘记分号“;”结束每个完成命令(行)的结束。

进一步

window.onload = function(){
    $(document).ready(function() { /* ... */ });
};

不好。 您必须决定是否要在窗口加载时加载该函数,或者是否要在文档就绪时加载它。

写一下

<script type="text/javascript">
    $(document).ready(function() { /* ... */ });

    // OR

    $(window).load(function() { /* ... */ });
</script>