11

我有一个鼠标悬停函数,应该向我的视口元素添加一个类,但是当我将鼠标悬停在萤火虫中时出现错误:TypeError: jQuery(...).addclass is not a function。

HTML是:

<!DOCTYPE html>
<html>
<head> 
<meta charset="<?php bloginfo( 'charset' ); ?>" />
<title><?php wp_title('|','true','right'); ?><?php bloginfo('name'); ?></title>
<meta name="viewport" content="width=device-width" />
<link rel="stylesheet" type="text/css" media="all" href="<?php bloginfo( 'stylesheet_url'     ); ?>" />
<?php wp_head(); ?>
</head>
<body <?php body_class($class); ?>>
<header>
<div class="main-logo">
    <div id="site-title">

    </div><!--.site-title-->
</div><!--main-logo-->

<div class="header-right">
</div><!--header-right-->
</header>

<nav class="main">
<?php wp_nav_menu( array( 'theme_location' => 'main-menu' ) ); ?>
</nav>

<div class="viewport">
<script type="text/javascript"><!--//--><![CDATA[//><!--
jQuery(document).ready(function(jQuery){
jQuery('nav .home a').mouseover(function()
  {
    jQuery('.viewport').addclass('.viewporthome');
  });
});
 //--><!]]></script>
</div>
</div>

相关样式有:

    .viewport
    {
height: 400px;
width: 400px;
position: relative;
top: -90px;
margin: 0 auto;

}

.viewporthome
{
background-image: url('images/Screen2.png');
background-repeat: no-repeat;
background-position: center;
background-attachment: relative;

}

JS文件是:

      var hoverhome = 'url("images/Screen2.png")';
  var empty = '';
  var success = 'SUCCESS!';
  //home
  jQuery('nav .home a').hover(function()
  {
    jQuery('.viewport').css('background-image', hoverhome);

  });
  jQuery('nav .home a').mouseout(function()
  {    
        jQuery('.viewport').css('background-image', empty);
  }); 
4

5 回答 5

20

尝试这个 :

jQuery('.viewport').addClass('viewporthome');

addClass需要一个大写的“C”。

此外,添加类时,您不需要放置“。” 在字符串中,否则您的课程将是..viewporthome.

于 2013-05-31T20:33:38.957 回答
6

使用addClass代替addclass

于 2013-05-31T20:26:59.913 回答
3

添加一个类:

$(".something").click(function(){
    $(this).addClass("style");
});

删除一个类:

$(".something").click(function(){
    $(this).removeClass("style");
});
于 2013-05-31T22:16:25.733 回答
1

删除多余的点并使用addClass()not addclass()

jQuery('.viewport').addClass('viewporthome');
于 2013-05-31T20:27:16.660 回答
0

检查您的大小写。addClass 方法有一个大写的“C”。

jQuery addClass 方法

如果图像仍未显示,则可能是图像的相对路径存在问题。如果图像文件夹与您的 Javascript 文件不在同一目录中,您可能需要修改路径。如果不知道您的目录结构,我无法准确说出您需要做什么。

于 2013-05-31T20:30:10.940 回答