我通过这样做包含了jQuery:
<?xml version="1.0"?>
<!DOCTYPE window SYSTEM "chrome://orkutmanager/locale/browser.dtd">
<overlay id="omcore"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="../../jquery-1.4.2.js"/>
<script type="text/javascript">jQuery.noConflict();</script>
<script type="application/x-javascript" src="../../OM.js"/>
</overlay>
这是我的chrome.manifest
content orkutmanager chrome/content/
overlay chrome://browser/content/browser.xul chrome://orkutmanager/content/XUL/Browser/Core.xul
skin orkutmanager classic skin/
locale orkutmanager en-US locale/en-US/
然后我尝试使用
gBrowser.addEventListener('DOMContentLoaded',
function (e)
{
var contentWindow = e.originalTarget.defaultView;
var contentDocument = contentWindow.document;
var $ = jQuery;
var x = $("a", contentDocument).attr("onclick"); //
// Error: uncaught exception: unknown (can't convert to string)
}, false);
虽然
$("a", contentDocument).get(0).getAttribute("onclick");
正常工作。
我是否必须以不同的方式包含jQuery?我怎样才能让它像往常一样工作? 是否有另一种jQuery方法来获取属性的值?
正常情况下,example here。
答案 0 :(得分:1)