mouseenter和removeClass不使用隐藏对象

时间:2014-08-26 13:43:04

标签: jquery removeclass mouseenter

我有两个div,我想第二个在第一个悬停时出现。我之前做过类似的事情,但是同样的代码现在还没有用。

<div class='button blog'>                 
    <h2>Blogs</h2>
</div>

<ul id='blogs' class='hidden'>
    <p>James</p>
    <p>Jeremiah</p>
    <p>Peter</p>
    <p>Thomas</p>
</ul>

到目前为止,我的jquery代码很简单

$('.blog').mouseenter(function() {
    $('.blogs').removeClass('hidden');
});

我确实有主要功能设置和在就绪标记上运行文档的一行。我甚至有一些其他jquery代码正在工作,它基本上做同样的事情,并运行相同的原则。我做错了什么?

2 个答案:

答案 0 :(得分:3)

由于您是通过 ID 选择的,因此您必须使用#

$('#blogs').removeClass('hidden');

答案 1 :(得分:3)

除了speakys回答,我假设你还想在mousleave上再次隐藏它。 最简单的方法是show()和hide()函数。如果元素本身被设置为通过css隐藏,则那些不会起作用。

首先,从你的html中删除隐藏的类(我想通过css隐藏元素)。 你的脚本应该是这样的:

$("#blogs").hide();

$(".blog").hover(function(){
        $("#blogs").show();
    },
    function(){    
        $("#blogs").hide();
    }
);