为什么我不能在亚马逊(在控制台中)使用jQuery?

时间:2012-07-10 22:24:10

标签: javascript jquery

在firefox中使用firebug控制台,例如执行此脚本时

$("body").css("border","4px solid red");

它将返回错误消息:

TypeError: $("body") is null

相同的铬错误:

TypeError: undefined is not a function

任何人都知道为什么?以及如何使用它?

3 个答案:

答案 0 :(得分:4)

$不是对该网站jQuery的引用。

看起来似乎加载了旧版本的jQuery ......

你可以这样说......

jQuery.fn.jquery; // 1.2.6

另外,请记住,控制台通常不是纯粹的环境。如果没有其他代码使用$变量,他们可能会接管它。

看起来好像Firebug确实如此。我猜这是document.getElementById的快捷方式,如果没有ID为null的元素,则会返回"body"

Chrome中的错误不同,因为$显然是undefined,因此您尝试将undefined用作函数。

答案 1 :(得分:3)

如果是亚马逊,只定义了jQuery,而不是$,则可以使用jQuery()功能代替$(),或者只定义$=jQuery

请注意,jQuery的版本是旧版本:1.2.6

修改

$=jQuery.noConflict()听起来更干净

答案 2 :(得分:0)

由于“我不是我”,亚马逊要么不使用jQuery,要么不将其别名为“$”。

如果你想在这样的网站上使用jQuery,你可以使用像这样的jQuerify-ing书签:

http://www.learningjquery.com/2009/04/better-stronger-safer-jquerify-bookmarklet

暂时向页面添加jQuery(带有标准的“$”别名)。