Поэтому я пытаюсь включить waypoints.js в свою страницу WordPress, но не могу понять, почему она не работает.
Я получил это в моем functions.php внутри моей темы (и я поместил noframework.waypoints.min.js в папку js):
function waypoints_init() {
wp_enqueue_script( 'waypointsJS', get_template_directory_uri() . '/js/noframework.waypoints.min.js', array('jquery'), true);
}
add_action('wp_enqueue_scripts', 'waypoints_init');
Тогда я написал:
function waypointTrigger() {
echo '<script>
jQuery(document).ready(function() {
var waypoint = new Waypoint({
element: document.getElementById("triggerPointId"),
handler: function() {
alert("Basic waypoint triggered");
}
});
})
</script>';
}
add_action('wp_footer', 'waypointTrigger');
и все же, когда я прокручиваю вниз до точки, где находится элемент с идентификатором, упомянутым выше, я ничего не получаю вообще.
Где я ошибся?
Я закончил тем, что добавил это в functions.php
//*WAYPOINTS
function waypoints_init() {
wp_enqueue_script( 'waypointsJS', get_template_directory_uri() . '/js/jquery.waypoints.js', array('jquery'), true);
}
add_action('wp_enqueue_scripts', 'waypoints_init');
Затем я добавил пользовательский файл .js, в котором я установил все jQuery, необходимые для моего сайта (включая путевые точки):
function yourCustomJSFunction() {
wp_enqueue_script( 'type_anything_here', get_template_directory_uri() . '/js/yourCustomJS.js', array('jquery') );
}
add_action('wp_enqueue_scripts', 'yourCustomJSFunction');
Тогда просто не забудьте добавить каждую строку вашего кода в:
jQuery(function($){
//Here you can use your normal jQuery syntax like for example:
var mainScreenHeight = $('#start').height();
$(window).on('scroll', function() {
var st = $(this).scrollTop();
if (st <= mainScreenHeight) {
$('#customBox').css({'opacity' : (0 + st / mainScreenHeight) });
};
});
});
Надеюсь это поможет!
Других решений пока нет …