Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
单击时出现javascript/jquery问题_Javascript_Jquery_Click - Fatal编程技术网

单击时出现javascript/jquery问题

单击时出现javascript/jquery问题,javascript,jquery,click,Javascript,Jquery,Click,我的java脚本代码出了问题。我有一个基本的html页面和这个代码 <div class="myclass" id="myid"> <h3 class="myotherclass"><?php echo _("Some sentence"); ?></h3> </div> 当我把这个脚本: <script type="text/javascript"> $("div").click(function (

我的java脚本代码出了问题。我有一个基本的html页面和这个代码

<div class="myclass" id="myid"> 
   <h3 class="myotherclass"><?php echo _("Some sentence"); ?></h3>
</div>

当我把这个脚本:

<script type="text/javascript">
    $("div").click(function () {
        alert('hello');
    });
</script>

$(“div”)。单击(函数(){
警惕(“你好”);
});
单击div标记会触发警报消息,但当我放置以下内容时:

<script type="text/javascript">
    $("h3").click(function () {
        alert('hello');
    });
</script>

$(“h3”)。单击(函数(){
警惕(“你好”);
});

没有触发任何事件。可以解释一下吗?

您应该将代码放在文档就绪处理程序中:

$(document).ready(function(){
   // ...
})

你把代码包装在就绪处理程序中了吗

$("document").ready(function(){})

实际上,在本例中,您可以使用jquery的live()语法:
.live(events,handler(eventObject))
,请参见此处。您还可以使用on()语法。on(events[,selector][,data],handler(eventObject)),因为最近版本的jquery开始不推荐使用live,请参见此处

它仍然不起作用。顺便说一下,我注意到,当我使用检查员悬停区域时,当我使用包含“h3”的div标记,并且由检查员高亮显示时,当我将这个div标记放在“click脚本”中时,它工作正常。我的浏览器有问题吗?@user1611830我把这个div标记放在“点击脚本”中是什么意思?使用类选择器?您使用的是哪种浏览器?你在JS控制台上看到任何错误吗?它在chrome和safari上都不起作用。事实上,我在问题中输入的代码的html部分实际上由一个id为“id”的div包装,这就是我的检查器在悬停区域时检测到的这个div。当我在脚本中替换这个div#id时,单击会触发警报消息。@user1611830您可以用当前标记提供一个演示吗?它确实可以使用JSFIDLE工作,但在我的浏览器上不工作,虽然我清理了缓存…但我认为问题是来自相对定位:事实上,有一个div标记在后面,比如说。。。当我使用我的检查器时,两个div“myid”和“myotherid”相互高亮显示。那我怎么才能绕过它呢?