2015-05-19 27 views
6

Vì vậy, tôi biết có những cách chuyển đổi kiểu tốt hơn, nhưng hãy mang theo ...Sự kiện nhấp chuột của jQuery chỉ hoạt động sau khi di chuyển chuột trong Chrome

Dường như có một lỗi nhỏ xảy ra trên Chrome (nhưng không phải Firefox) trong trường hợp sự kiện 'click' sẽ không làm bất cứ điều gì cho đến khi con chuột di chuyển sau sự kiện.

$(function(){ 
    $('#selectsomething a[rel$=".css"]').click(function(e){ 
     e.preventDefault(); 
     $('link.skeletor').attr('href', $(this).attr('rel')); 
    }); 
}); 

Vì vậy, nếu bạn nhấp vào liên kết nhưng không di chuyển chuột có gì xảy ra ... Bạn có nghĩ rằng đây có thể là một lỗi chính đáng với Chrome hay tôi làm điều gì sai?

+7

Tôi không thể hiểu được tại sao điều này có năm upvotes. Tôi cũng không thể tái tạo vấn đề của bạn. Bạn có thể tạo đoạn mã chồng hoặc jsFiddle hiển thị sự cố không? Đây là của tôi hoạt động tốt trong Chrome mà không cần phải di chuyển chuột http://jsfiddle.net/j08691/e6k2zzsc/ – j08691

+1

Như một lưu ý phụ, một thẻ liên kết với thuộc tính 'rel' chứa giá trị kết thúc bằng' .css' là không hợp lệ. Theo [MDN] (https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-rel): _ "... thuộc tính này chỉ định mối quan hệ của đối tượng đích với đối tượng liên kết. Giá trị là danh sách các giá trị loại liên kết được phân tách bằng dấu phẩy ... "_ Có thể tìm thấy danh sách các loại liên kết hợp lệ [tại đây] (https://developer.mozilla.org/en-US/docs/ Web/HTML/Link_types). – War10ck

Trả lời

-1

Tôi không lý do tại sao điều này không nên hoạt động (ngoại trừ việc sử dụng rel = lạ).

Nếu bạn đang cố gắng sử dụng phiên bản rút gọn hoặc phiên bản có nhiều phiên bản của js, sự cố có thể là việc sử dụng .click thay vì .on('click', function(e)).

Để xem ví dụ về những gì tôi đang cố gắng để nói, check out my Fiddle.

Đối với một giải thích đầy đủ về sự khác biệt giữa hai chức năng nhấp chuột kiểm tra this overflow

Các vấn đề liên quan