1

我正在尝试向我的页面的一部分添加一个简单的悬停和单击功能,但它不起作用。我已经做了几百次没有问题,但这次不同,我不知道为什么?

HTML:

<div class="description">
    <div id="wrapper">
        <p>bla bla bla</p>
        <div class="linkDesc">
            <a href="#">bla bla bla</a>
        </div>
        <div class="plusSign">&nbsp;</div>
    </div>
</div>

jQuery:

jQuery(document).ready(function () {

    $('#wrapper').hover(function () {
        $('this').addClass('hover');
    }, function () {
        $('this').removeClass('hover');
    });
    $('#wrapper').click(function(e) {
        e.preventDefault();
        var urlLocation = $('this').find('.linkDesc').children('a').attr('href');
        window.location = urlLocation;
    });
});
4

3 回答 3

7
$('this')   // You have enclosed it as as a string
            // It will try to look for tagName called this

应该

$(this)    // Removing the Quotes should work

只有合法TagNames , classNames , psuedo Selectors and Id's的应该包含在引号中..

检查小提琴

于 2012-11-08T16:34:13.663 回答
0

替换$('this')$(this)

于 2012-11-08T16:34:24.147 回答
0

如果您只需要添加/删除类,那么您可以使用 css 设置悬停:

#wrapper:hover {
    background: red;
}
于 2012-11-08T17:21:20.577 回答