所以我试图在我的wordpress页面中包含waypoints.js,但我无法弄清楚它为什么不起作用。
我在我的主题中的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');
并且当我向下滚动到上面提到ID的元素所在的位置时,我什么也得不到。
我在哪里弄错了?
答案 0 :(得分:0)
我最后将它添加到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) });
};
});
});
希望这有帮助!