下拉更多错误

时间:2011-12-12 00:13:25

标签: javascript jquery html css

我在这里有一个脚本,如果我点击它就会下降,如果我点击它就会下降。但我想这样做,如果我点击底部它向上滚动。由于某种原因,它在这里不起作用。如果我在框外单击,它只会向上滚动。

这是一个例子。 http://jsfiddle.net/w8mfx/

如果我单击底部,它只会在我点击外面时不会向上滚动。但我希望它能同时发挥作用。

$(document).ready(function() {
    $('#bottom').click(function(event) {
    event.stopPropagation();
    $('#content').slideDown();

});

    $('html').click(function(e) {
        //alert(1);
        if (e.target.id != 'bottom') {
            $('#content').slideUp();
        }
    });
});

2 个答案:

答案 0 :(得分:3)

http://jsfiddle.net/w8mfx/7/

我补充说:

$('#content').click(function (event) {
    event.stopPropagation();
});

因此用户可以单击#content元素,而不是触发滑动功能。这也意味着html元素的事件处理程序可以更简单:

$('html').click(function(e) {
    $('#content').slideUp();
});

在jsfiddle中你可能会注意到我在一个变量中缓存了$('#content')选择器,因为它在不止一个地方使用过。

答案 1 :(得分:2)

使用slideToggle()http://jsfiddle.net/w8mfx/5/