我已经搜索过类似的问题,但还没有找到答案。
在我使用 Genesis 框架的 Wordpress开发站点上,我尝试使用以下 jquery 脚本:smoothscroll.js和 Matt Verone 的 Dynamic to top(WP 插件版本和手动版本)。两者都不起作用。我已经成功地在 WP 和非 WP 网站上使用了这两种方法。
我通过functions.php中的以下方法将smoothscroll.js和动态到顶部脚本(手动使用时)、easing.js和jquery.ui.totop.min.js排入队列。
function tm_scripts()
{
wp_register_script( 'easing', get_stylesheet_directory_uri() . '/lib/js/easing.js', array( 'jquery' ), null, true );
wp_register_script( 'smoothscroll', get_stylesheet_directory_uri() . '/lib/js/smoothscroll.js', array( 'jquery' ), null, true );
wp_register_script( 'jquery.ui.totop.min', get_stylesheet_directory_uri() . '/lib/js/jquery.ui.totop.min.js', array( 'jquery' ), null, true );
wp_register_script( 'main', get_stylesheet_directory_uri() . '/lib/js/main.js', array( 'jquery' ), null, true );
wp_enqueue_script( 'easing' );
wp_enqueue_script( 'smoothscroll' );
wp_enqueue_script( 'jquery.ui.totop.min' );
wp_enqueue_script( 'main' );
}
add_action( 'wp_enqueue_scripts', 'tm_scripts' );
当我查看代码时,它们出现在页脚中。
然后我尝试让 jquery 通过 wp 和 CSS Tricks 中的以下 jquery enqueue 方法加载:
if (!is_admin()) add_action("wp_enqueue_scripts", "tm_jquery_enqueue", 11);
function tm_jquery_enqueue() {
wp_deregister_script('jquery');
wp_register_script('jquery', "http" . ($_SERVER['SERVER_PORT'] == 443 ? "s" : "") . "://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js", false, null);
wp_enqueue_script('jquery');
}
没运气。我使用的唯一其他插件是 Contact Form 7 和 Akismet。我觉得某处有冲突,只是不确定是什么。任何帮助将不胜感激。