Được rồi, tôi gặp sự cố lạ này trong Firefox. Tôi nhập vào giao diện điều khiển của Firebug
$ == jQuery
Thỉnh thoảng nó hiển thị đúng và đôi khi sai. Tệp chỉ là một tài liệu HTML trống với một thẻ script bao gồm jQuery. Tôi làm mới trang, nhấp vào "Chạy" trong bảng điều khiển, và một lần nữa, đôi khi nó trả về true, đôi khi sai.
Trên dịp mà nó trả về false, $.toString()
cho
function anonymous() {
return window.console.notifyFirebug(arguments, "$", "firebugExecuteCommand");
}
Bây giờ đây là điều lạ. Khi $ == jQuery
cung cấp sai khi sử dụng bảng điều khiển Firebug, nếu tôi truy cập thanh địa chỉ và nhập javascript:alert($ == jQuery);
, cảnh báo sẽ đúng!
Có ai có ý tưởng gì đang xảy ra ở đây không? Đó là (đôi khi) rối tung lên gỡ lỗi của tôi.
Dường như Firebug sử dụng biểu tượng $ cho thứ gì đó. Chỉ là một ý nghĩ - không chắc liệu nó có hợp lệ hay không. –
Nó có thể là 'noconflict' hoặc một cái gì đó. Nếu bạn cố gắng làm '$ === jQuery' mà không jQuery thực sự nạp, bạn sẽ nhận được một lỗi tham chiếu ngoài dòng lệnh' false' –
Firebug liên kết '$' với [một hàm gọi 'getElementById'] (http://fbug.googlecode.com/svn/trunk/content/firebug/commandLineAPI.js). Tôi không thể nghĩ ra một lý do thực tế tốt mà có một sự pha trộn giữa hai mặc dù, trừ khi bạn đang chạy đoạn mã trước khi kịch bản jQuery tải đầy đủ (nhưng điều này dường như không cho tôi). –