2011-12-12 38 views
5

Trang của tôi đang tạo động lớp cơ thể và một số plugin WordPress được tạo. Tôi muốn dễ dàng loại bỏ lớp đó, vì vậy tôi đã có thể tìm ra được với jQuery. Tôi nghĩ điều này sẽ loại bỏ các "trang" lớp từ mã cơ thể mà kết thúc lên trông như:Jquery để xóa lớp học khỏi thẻ body

<body class="page otherattr otherattr2 etc etc"> 

Bằng cách sử dụng jquery này trong chân của tôi:

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("body").removeClass("page"); 
    }); 
</script> 

Nhưng nó dường như không làm việc , tui bỏ lỡ điều gì vậy?

+5

Điều đó sẽ hiệu quả. Bạn có gặp bất kỳ lỗi nào trong bảng điều khiển không? Bạn đã bao gồm jQuery chưa? –

+0

Khi bạn nói * tự động tạo lớp cơ thể *, điều này có nghĩa là WordPress tạo ra nó trên máy chủ và bạn muốn loại bỏ nó bằng Javascript? Hay điều đó có nghĩa là cái gì khác? Ngoài ra, bạn có cân nhắc việc ghi đè nó ('body.page {canceling properties}') không? –

+0

Mã đó có vẻ ổn với tôi. Bạn có thể xác minh rằng tập lệnh đang được chạy và thẻ body có lớp đó tại thời điểm bạn đang cố xóa lớp đó (nghĩa là nó không được thêm động dưới dạng một số điểm sau khi bạn đã xóa mã chạy)? – nachito

Trả lời

0

Nếu với động bạn có ý nghĩa trong back-end (phía máy chủ) sau đó mã của bạn nên làm việc ..

Nếu bạn có ý nghĩa với một số javascript khác thì bạn nên chắc chắn rằng mã của bạn được chạy sau khi mã sẽ thêm nó ..

Trên đường đi sẽ có thêm một sự chậm trễ, hoặc thậm chí tốt hơn để liên tục kiểm tra cho đến khi nó được thêm vào ..

Something như

$(function cleanBody(){ 
    var body = $('body'); 

    if (body.is('.page')){ 
    body.removeClass('page'); 
    } else { 
    setTimeout(cleanBody, 500); 
    } 
}); 

nên làm điều đó ..

0

Làm việc cho tôi 100%. Vui lòng kiểm tra mã nguồn của iframe 'Kết quả' ở dưới cùng bên phải.

http://jsfiddle.net/nNrqf/

5
$(document).ready(function(){ 
    jQuery(window).load(function() { 
    $("body").removeClass("page"); 
    }); 
}); 
0

Cố gắng thêm kịch bản của bạn ở dưới cùng của trang và kiểm tra xem nó đang làm việc tốt. Nếu đúng như vậy thì lớp "trang" sẽ được nối thêm từ mã javascript khác. Hãy thử tìm và đặt mã loại bỏ của bạn sau đó.

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