首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery在Firebug运行时在Firefox中工作,在Firebug不运行时不工作

jQuery在Firebug运行时在Firefox中工作,在Firebug不运行时不工作
EN

Stack Overflow用户
提问于 2009-10-20 19:37:27
回答 5查看 5K关注 0票数 17

我为我的页面加载了以下Javascript库。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="http://cdn.jquerytools.org/1.1.2/jquery.tools.min.js"></script>
<script type="text/javascript" src="./js/jquery.scrollTo-min.js"></script>

我有想要放置它们的div元素:

<div class="content" id="content">
</div>

我有这个链接:

<a id="changeText" href="rules.html">Click to change</a>

最后,我有以下jQuery代码:

<script>

$(document).ready(function() {
 $("#changeText").click(function(){

  var url = $(this).attr("href");

  $("#content").load(url);

  console.log(url);

  $.scrollTo("0%", 400);
 });
});
</script>

这一切都可以在Safari中运行。这个故事最奇怪的部分是,它只在Firebug打开时才能在Firefox中运行。当Firebug没有打开时,页面似乎是动态加载的,但随后页面加载rules.html并切换到它,这不是我想要的目标。

当然,这些在IE8中都不起作用。

我做错了什么?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-11-06 22:55:39

你最好把所有的东西都包起来

console.log(...) 

转到

if (window.console) {
    console.log(...);
}
票数 29
EN

Stack Overflow用户

发布于 2009-10-20 19:42:54

取出console.log,当firebug没有运行时,它是未定义的。

票数 11
EN

Stack Overflow用户

发布于 2010-11-18 07:26:10

在尝试使用控制台之前,请检查是否有控制台。

绑定一个布尔变量,如下所示:

var hasConsole = (typeof console != 'undefined' && typeof console.log != 'undefined');

并在写入控制台前进行检查:

   if (hasConsole) {
      console.log("This is safe.");
   }

这样,当您打开Firebug时,您将获得调试消息,而当您关闭Firebug时,您的脚本仍然有效。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1596836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档