jQuery / Javascript似乎停止工作?

时间:2012-06-05 21:25:10

标签: javascript jquery html

我还在学习jQuery(1.6分钟)和Javascript,但是对我迄今为止所能实现的目标感到非常满意,但这个问题让我上当了 - 我已经看了四个小时!

我在a中包含的页面上有以下链接(id值为'NorthWest'): -

<figure><a href="http://localhost:8888/popup/PFS98394" class="popUpSimple"><img src="http://localhost:8888/98394.jpg" alt="" border="0"></a></figure>

单击时,将内容正确加载到a中使其可见。它不会重新加载页面,只是使DIV在当前内容的顶部可见。执行此操作的Javascript使用标准的jQuery Fancybox。

一切正常,DIV可以多次显示和隐藏,每次加载不同的信息。现在有一个IMG按钮,允许用户使用最新内容重新加载“NorthWest”DIV - 点击它时执行此代码:

 $(".RefreshThumb").find("a").click(function(){
   $(".RefreshLoader").show();
   $("#NorthWest").load("/refreshdata");
   setTimeout(RefreshHide,1000);
 });

setTimeout行指的是一个小图形(刷新器),它会暂时显示,以告知用户正在刷新数据。

现在,取出$(“#NorthWest”)。load etc ..行,一切正常。重新添加该行,并且popUpSimple链接正常工作,直到单击IMG按钮刷新NorthWest DIV,之后popUpSimple内容作为新页面加载并且不再重叠 - 在点击之前弹出叠加层正常工作无论如何你点击它多少次。

编辑:我应该指出,在点击IMG按钮重新加载NorthWest DIV之后,它就成功了,只有当你点击popUpSimple链接时才会出错!

我做错了什么?我正在使用Safari并在重新加载页面后查看Web Inspector窗口,而不是加载到DIV节目中:

<script type="text/javascript">
$(document).ready(function() {

显示参考错误消息:无法找到变量$。

任何人都可以指出我正确的方向......拜托!

2 个答案:

答案 0 :(得分:1)

这听起来像是一个eventlistener问题,请尝试使用.on('click',function(){}代替.click(function(){}

答案 1 :(得分:1)

也许jquery'$'被另一个JS框架覆盖了。

当然没有单引号,只需用'jQuery'替换你的'$'。 您甚至可以尝试使用http://api.jquery.com/jQuery.noConflict/ 您可以在加载jQuery库后立即添加此内容,例如:

<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
  $.noConflict();
  // Code that uses other library's $ can follow here.
</script>