为什么要从父母那里删除元素?

时间:2012-12-31 05:50:01

标签: javascript jquery

请查看链接http://jsfiddle.net/KvscH/6/

您可以通过动态 SPAN 中的inspect element查看 LI ,但我不知道为什么会发生这种情况&我希望 SPAN 保持在 LI

帮助表示赞赏:)

4 个答案:

答案 0 :(得分:2)

因为使用了javascript。

由于javascript中的以下行,第一次看到Boo1。

ticker.children(':first').show().siblings().hide();

当我们致电show()时,会移除display:none。同样,hide()会添加display:nonevisibility:hidden。您可以使用firebug并检查应用的样式。

注意:如果从CSS中删除li{display:none},您将获得相同的功能。

答案 1 :(得分:1)

我认为你是在这之后: http://jsfiddle.net/TmNLE/

var ticker = $('ul.ticker');
var tickerli = $('ul.ticker li');
ticker.children(':first').show();

$('.next').live ('click', function () {
    $('li:visible').fadeOut(function() {
       $(this).appendTo(ticker);
       ticker.children().first().show();
    });
});

$('.prev').live ('click', function () {
    $('li:visible').fadeOut(function() {
       ticker.find('li:last').insertBefore(ticker.find('li:first'));
       ticker.children().first().show();
    });
});

答案 2 :(得分:0)

由于CSS特异性,这种内联样式正在应用和覆盖:

display: list-item;

提高特异性的一种方法是使用:

.ticker li {
    display:none !important;
}​

答案 3 :(得分:0)

只需调试代码并检查您应用的样式。

此问题是由于您的代码中的以下javascript行

ticker.children(':first').show().siblings().hide();

添加此行

ticker.children(':first').show();