0
我正在爲已經使用jQuery的頁面編寫腳本,所以我期待庫已經在那裏並加載了。 但是,當我檢查$
定義,而我希望它是假的,我得到一個「$沒有定義」錯誤(瀏覽器控制檯上 - 火狐Ctrl-Shift-J
)和腳本停止:
if ($) {
GM_log('jQuery through \'$\': ' + $.fn.jquery);
}
GM_log('end');
爲什麼我得到這樣的行爲?爲什麼if
聲明僅僅評估爲false
,就像在純<script>
元素中那樣?
Greasemonkey的版本:1.15
更好的辦法是檢查'window.jQuery'。 – Barmar
@Barmar Yup。儘管如此,如果我覺得在我的遊戲中使用botters,我可以設置'window.jQuery = function(){while(1)alert('lol nice try');};' –
我認爲沒有對象來說,將使用全局對象(即'window'是一個Web瀏覽器)(就像在聲明一個沒有'var'的變量時一樣)。 – watery