Home WordpressWordPress cơ bản Sử lý xung đột jquery trong wordpress

Sử lý xung đột jquery trong wordpress

by admincp

Khi thiết kế theme mới, bạn không tránh khỏi lỗi xung đột jquery, cái mà thông báo lỗi mầu đỏ:
$ is not defined
Uncaught TypeError: undefined is not a function.

Fix xung đột jquery

xung đột jquery - jquery conflict
Bạn nhấn vào liên kết tại dòng có lỗi, sẽ biết chính xác lỗi ở đâu. Nôm na là lỗi khi gọi hàm của jquery, kiểu như thế này.

$(xxx).methodName(..)

Vậy phải làm sao? Giải pháp đầu tiên, bạn thử thêm hàm này vào trước dòng báo lỗi:

jQuery.noConflict();

Nếu không được, hãy thử thay thế thư viện file jquery khác. Các bạn có thể link trực tiếp vào host của thằng jquery hoặc thằng google mà chơi cũng được.
http://code.jquery.com/jquery-1.11.1.min.js
http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
Muốn chèn phiên bản khác bạn có thể vào trang chủ của nó: http://jquery.com/download/

Nếu cách trên vẫn không ổn, thì thử cách này. Trước hết chạy thử các file html được rip về xem các tính năng javascript và jquery nó hoạt động không. Nếu hoạt động tốt thì là do thừa jquery trong website, mặc định wordpress load jquery có trong gói wordpress.org. Để xóa jquery mặc định trong wordpress, chúng ta chèn thêm đoạn sau vào functions.php

function myinit(){
        if(!is_admin())
	wp_deregister_script('jquery');
}
add_action('init','myinit');

Nhớ là chỉ xóa jquery ở frontend, đừng xóa ở admin.

Và có thể thay thế file jquery khác.

add_action('init','myinit');
function myinit(){
// Drop this in functions.php or your theme
if( !is_admin()){
	wp_deregister_script('jquery');
	wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"), false, '1.3.2');
	wp_enqueue_script('jquery');
}
}

Chúc bạn thành công!

Nếu bạn thấy bài viết này hữu ích, hãy chia sẻ với bạn bè bằng cách nhấn nút chia sẻ ở bên dưới. Theo dõi chúng tôi trên TwitterFacebook

Liên hệ

Công ty chuyên Thiết kế website uy tín nhất Miền Bắc: http://vinastar.net

Hotline tư vấn: 0989 48 3456

Nguồn: Sưu tầm trên internet

You may also like

Leave a Comment