我收到的错误:未捕获TypeError:对象[object Object]没有方法'sticky'
我正在转移一个网站,我已经进入了Wordpress。该网站正在使用粘性标题插件。情况是jquery处理程序不起作用。我尝试了无冲突并将代码放在名为function.php的文件中。谁能指出一些好的方法?将较少的代码放在一个单独的文件中似乎有点不必要。
非常感谢提前:)<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html <?php language_attributes(); ?>>
<head>
<meta http-equiv="Content-Type" content="<?php bloginfo('HTML_type');?>" charset="<?php bloginfo( 'charset' ); ?>" />
<title>
<?php wp_title('Het blinde konijn', true, 'rights'); ?>
<?php bloginfo('name');?>
</title>
<link rel="stylesheet" href="<?php bloginfo( 'stylesheet_url'); ?>" type="text/css" media="screen" />
<?php
wp_deregister_script('jquery');
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js', false);
wp_enqueue_script('jquery');
?>
<?php wp_enqueue_script('stickyheader', get_template_directory_uri() . '/js/jquery-sticky.js', array('jquery')); ?>
<?php wp_head(); ?>
<script type="text/javascript">
var $j = jQuery.noConflict();
$j(document).ready(function(){
$j("#header").sticky({topSpacing:0});
resizeWindow();
$j(window).bind("resize", resizeWindow);
function resizeWindow(e) {
contentHeight = $j(window).height() - $j("#header").height();
$j(".zebra li").css("max-height", contentHeight);
}
});
</script>
</head>
答案 0 :(得分:0)
您的代码似乎很好。
您是否尝试检查是否在脚本注册的页面中正确导入了Jquery? 您使用的是哪个版本的Jquery?最后(2.0)或1.9?
某些插件不适用于2.0;您可以尝试导入1.9而不是2.0。
答案 1 :(得分:0)
wp_deregister_script('jquery');
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js', false);
wp_enqueue_script('jquery');
属于functions.php。
定义以下课程(当然你可以重命名):
.sticky {
position: fixed;
width: 100%;
left: 0;
top: 0;
z-index: 100;
border-top: 0;
}
将脚本更改为以下内容:
$(document).ready(function() {
var stickyNavTop = $('.nav').offset().top;
var stickyNav = function(){
var scrollTop = $(window).scrollTop();
if (scrollTop > stickyNavTop) {
$('.nav').addClass('sticky');
} else {
$('.nav').removeClass('sticky');
}
};
stickyNav();
$(window).scroll(function() {
stickyNav();
});
});
虽然.nav是你的粘性元素。
您也可以使用像“Sticky Plugin”这样的jQuery插件。