Jquery 1.4:两个函数在同一页面上不能一起工作

时间:2010-02-14 17:37:19

标签: jquery function click jquery-animate show

我有两个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,所以我就这样标记了它。)

我已经尝试将两个函数放在同一个“文档就绪”中,尝试交换顺序,但它们只是不能一起工作。

有什么想法吗?

感谢。

更新

这是第一个无法响应click事件的函数。它仅在执行第二个功能(链接到表单提交)后才起作用。仍然想知道为什么会这样。

最终更新:

解决了Firebug的问题。不得不初始化通过PHP传递的PHPTRIGGER值为空值或第一个函数失败。实际上这很有趣,因为该函数不接受任何PHP。基本上,第二个函数中的(严格)语法错误导致第一个函数失败,而第二个函数本身工作正常。

1 个答案:

答案 0 :(得分:1)

当我把它们放入测试页面时,它们对我有用:

  • 4秒后弹出隐藏。

  • pop-text显示“已发送消息。”

  • 当我点击#add-questions时,#extra-questions div会淡入(假设初始显示:无)

如果你想要的东西不是那样的话,你可能只是看着你自己的代码(也许你想在两个地方都使用#pop而不是一个中的#pop而另一个中需要#pop-text?)

您可能尝试的其他事项:在Chrome中运行并检查JS控制台是否存在错误(如果您当前的调试器未显示错误且执行只是暂停)。检查HTML以确保引用的ID确实存在。检查您的CSS以确保您的初始值正确。确保您的$ PHPTRIGGER变量正确传递。

如果您有更多信息或找不到任何信息,请告知我们。

相关问题