【发布时间】:2011-01-16 17:59:31
【问题描述】:
我有两个 Jquery 函数,我可以单独在页面上正常工作,但当我同时拥有它们时就不行了。我无法看到我可能做错了什么,因为我在其他页面上也有类似的代码运行良好。
第一个功能:
$(document).ready(function()
{
$("#add-questions").click(function() {$("#extra-questions").fadeIn(800);});
});
第二个功能:
$(document).ready(function()
{
if($PHPTRIGGER == true)
{
$("#pop-text").html("Message sent.");
$("#pop").show();
setTimeout(function() {$("#pop").animate( {height: "hide", opacity: "hide"}, "medium");}, 4000);
}
});
“$PHPTRIGGER”是我传递给 Jquery 的 php 变量(StackOverflow 不允许我放入真正的 php,所以我已经这样标记了)。
我尝试将这两个函数放在同一个“文档就绪”中,尝试交换顺序,但它们不能一起工作。
有什么想法吗?
谢谢。
更新:
这是第一个无法响应点击事件的函数。它仅在执行第二个功能(链接到表单提交)后才起作用。仍然想知道为什么会这样。
最终更新:
解决了 Firebug 的问题。必须用空值初始化通过 PHP 传递的 PHPTRIGGER,否则第一个函数会失败。实际上这很有趣,因为该函数不接受任何 PHP。基本上,第二个函数中的(严格)语法错误导致第一个函数失败,而第二个函数本身工作正常。
【问题讨论】:
-
如果您还没有在 Firebug 中使用 Firefox,请安装它(或类似 Firebug for IE)并检查控制台是否有任何错误消息。
-
而且您很确定目标“add-questions”元素确实存在并且确实具有该“id”值(并且确实是唯一具有该“id”值的东西)?正如@Felix 所说,Firebug 在尝试确定设置的合理性时非常宝贵。
-
安装了firebug,现在看看。
-
是的,一切正常。就像我提到的,如果我删除任何一个功能,另一个会正常工作。如果我两个都在,第一个失败...
-
@Felix... 这个“答案”感谢您,所以如果您想在下面添加答案,我会将其标记为已接受。
标签: jquery function click jquery-animate show