单击jQuery中的事件未按预期工作
我的页面中有一个div和一个锚链接,并且我正确地引用了jQuery。 是这样的:单击jQuery中的事件未按预期工作,jquery,events,click,fadeout,Jquery,Events,Click,Fadeout,我的页面中有一个div和一个锚链接,并且我正确地引用了jQuery。 是这样的: <div id="tools"></div> <!---- which has width and height , .. ---> <a class="navtab" href="#" id="onoff">Forum Tools</a> 然后我把这个代码: <script> $("#onoff").click(function {
<div id="tools"></div> <!---- which has width and height , .. --->
<a class="navtab" href="#" id="onoff">Forum Tools</a>
然后我把这个代码:
<script>
$("#onoff").click(function {
$("#tools").fadeOut(2000);
});
</script>
$(“#onoff”)。单击(函数{
$(“#工具”)。淡出(2000年);
});
我希望当我点击链接时,div会在2秒钟后消失。但是什么也没发生。。
但是,当我将其用作一个简单的语句而没有任何事件时,它会完美地工作:
<script>
$("#tools").fadeOut(2000);
</script>
$(“#工具”)。淡出(2000年);
为了确保没有问题,我将整个代码放入.load事件中:
<script>
$(document).ready(function() {
$("#onoff").click(function {
$("#tools").fadeOut(2000);
});
});
</script>
$(文档).ready(函数(){
$(“#onoff”)。单击(函数{
$(“#工具”)。淡出(2000年);
});
});
但仍然没有机会:|
我的代码怎么了?
任何帮助都将不胜感激。您在
函数之后缺少括号
$("#onoff").click(function {
应该是
$("#onoff").click(function() {
您需要在单击(函数)后添加()
到
此外,如果您不使用,浏览器支持可能会出现问题:
<script type="text/javascript">
在调用任何jQuery功能之前,始终确保包含jQuery文件:
<script type="text/javascript" src="/path/to/my/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#onoff").click(function(){
$("#tools").fadeOut(2000);
});
});
</script>
$(文档).ready(函数(){
$(“#onoff”)。单击(函数(){
$(“#工具”)。淡出(2000年);
});
});
全功能示例:
你确定这就是你的全部代码吗?因为据我所知,没有$(document).ready(function(){/*code放在这里*/});
你的代码在DOM准备好之前,在任何元素出现以绑定事件之前,正在按遇到的方式运行。另外,在你的第一个代码块中,你漏掉了括号()
应该在您的函数之后和开始曲括号之前{
。我看不出你的代码有什么明显的错误。你的页面上有多个ID为onoff
的元素吗?这是我能想到的最可能的原因。@DavidThomas他说
标记在元素的HTML之后,所以它们在代码执行时会存在。@Anthony:啊,是的。我……应该是的来Stackoverflow之前先喝点酒,嗯?=/@DavidThomas谢谢david。你说得对,这是一个小错误,而且带有比喻。
<script type="text/javascript">
<script type="text/javascript" src="/path/to/my/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#onoff").click(function(){
$("#tools").fadeOut(2000);
});
});
</script>