#javascript #wordpress
#javascript #wordpress
Вопрос:
Я знаю, что здесь есть несколько сообщений об этом, но, просмотрев их тонну, у меня все еще возникают проблемы. Итак, заранее приношу извинения за добавление еще одного вопроса о чем-то, что кажется таким простым, но я новичок в этом и застрял!
При этом — у меня есть soundclick.js . Он находится в папке js моей темы. Он работает, вставленный прямо в заголовок, но мне это нужно в моем functions.php файл, как и все другие хорошие маленькие javascripts.
function wpana_js() {
wp_register_script('soundclick', get_template_directory_uri() . '/js/soundclick.js', array(), '0', false);
wp_enqueue_script('soundclick');
}
add_action('wp_enqueue_scripts', 'wpana_js');
Ввод кода — javascript отображается в исходном коде страницы, но затем мои вызовы javascript для воспроизведения этих звуков при нажатии пользователем больше не работают. (вызовы работали просто отлично, когда javascript вставлялся непосредственно в заголовок)
Я упускаю что-то очевидное при возврате javascript в рабочее состояние? Спасибо!
обновление я исправил проблему — по-видимому, я правильно ставил в очередь, но моя проблема заключалась в самом файле js. была основная проблема с тем, как я создал файл. итак, он отображался, но не работал. спасибо всем за просмотр 🙂
Комментарии:
1. Итак, позвольте мне посмотреть, правильно ли я это понимаю, javascript загружается в браузер, но сам скрипт не работает?
Ответ №1:
Я бы проверил порядок, в котором загружаются ваши скрипты, когда
- он работает, вставляя его непосредственно в заголовок, а не
- он загружается через
wp_enqueue_script()
, как вы делали вfunctions.php
Загружается ли эта библиотека после вашего кода JavaScript, который пытается ее использовать? Это soundclick.js плагин jQuery?
Если вам нужно загружать одни скрипты после других, убедитесь, что вы определили зависимые скрипты в параметре array следующим образом (например, если для этого скрипта требуется jQuery)
wp_register_script('soundclick', get_template_directory_uri() . '/js/soundclick.js', array('jquery'), '0', false);
Комментарии:
1. Я тоже подозревал это, но пытался убедиться, что скрипт сначала загружается в браузер.