javascript - 老是调用不了JS函数
伊谢尔伦
伊谢尔伦 2017-04-10 14:34:34
0
7
445
 <p id="bb" onclick="aa()"></p>正常情况

若去掉onclick="aa()",改为$("#bb").click(function(){}),就老执行不了,最可能的原因是什么,还有怎么调试原因所在

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

Antworte allen(7)
Ty80

1.确认页面是否有其他报错
2.确认页面是否有jquery
3.确认页面是否有id为bb的标签
4.试试这样:$("#bb").click(function(){alert(1)})

Ty80
jQuery(function($){
    $('#bb').click(function(){
        // .....
    });
});

这样呢? 看了上面的回答, 感觉应该是你注册事件回调的时候, dom还没有出来

巴扎黑

确认是否有两个#bb,大于1个的话,只有第一个能执行,后面的都不会执行~ 而且不会报错

要是使用 ajax 添加的 p 就需要 使用(on、live)了

PHPzhong

改成这样试试:jQuery("#bb").click(function(){})。

PHPzhong

根据经验,八成是在事件绑定上出了问题。
看看浏览器的 Console 有没有报错,根据错误来判断,一般会有两种可能:

  1. $("#bb").click(function(){}) 你的这段代码放置在主体文档(指
    body)之前,事件绑定在了一个还未生成的元素上;
  2. jQuery 未引入。

要是没发现报错的话,那就活见鬼了~

洪涛

我怎么记得是
document.getElementById("bb").onclick = function(){
alert(1);
}

巴扎黑

你试试把p改成这样

<p id="bb">
    <script type="text/javascript">
        $("#bb").click(function(){alert("执行了")});
    </script>
</p>

如果改成上面那样可以的话,就表示用你的方法注册click事件时,这个id是bb的p根本还没加载,你研究一下你这个p是什么时候加载的,再到合适的时机注册时间呗,不然再把多一些代码贴出来给大家帮着看看吧

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage