Скрипт не загружается в functions.php
Я работаю над подчеркивающей темой WordPress, и я не могу получить какой-либо собственный скрипт для отображения результатов при загрузке страницы. Я попытался включить простой скрипт 'test.js' в functions.php, чтобы проверить его. Все остальные скрипты работают просто отлично. Любая помощь будет оценена:
function blake_eric_scripts() {
/**
* Enqeue bootstrap javascript
*/
wp_enqueue_script( 'bootstrap-js', '//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js', array('jquery'), '3.3.6', true);
/**
* Enqeue bootstrap styles
*/
wp_enqueue_style( 'bootstrap-css', '//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css', array(),
'3.3.6', 'all' );
wp_enqueue_script( 'blake-eric-test', get_template_directory_uri() . '/js/test.js', array('jquery'));
/**
* Enqeue styles.css
*/
wp_enqueue_style( 'blake-eric-style', get_stylesheet_uri() );
wp_enqueue_script( 'blake-eric-skip-link-focus-fix', get_template_directory_uri() . '/js/skip-link-focus-fix.js', array(), '20130115', true );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
}
add_action( 'wp_enqueue_scripts', 'blake_eric_scripts' );
Вот простой скрипт jQuery "test.js":
$(function(){
$('#main').addClass('test-class');
});
Спасибо!
2 ответа
Замените свой test.js следующим набором кодов:
jQuery(function(){
jQuery('#demo').addClass('test-class');
});
Этот тип ошибки обычно возникает из-за конфликта с другими файлами JS.
По умолчанию Wordpress запускает jQuery в режиме без конфликтов, поэтому вы не можете использовать знак $ и определить функцию, подобную этой
$(function(){
$('#main').addClass('test-class');
});
Вместо этого вы можете сделать
jQuery(function($){
$('#main').addClass('test-class');
});
если вы включите $
знак в скобках, вы можете использовать его в остальной части функции. для более подробной информации проверьте здесь