这行代码如何在jquery中运行?

时间:2013-09-16 14:28:45

标签: jquery

我还有一些想法,我对这段代码感到有些困惑: 这行代码是我想知道的:

var items = $("#" + element[0].id + " li");

现在我的问题是:这行代码如何工作?那么这里的魔力在哪里?它是否填充了items-array?

顺便感谢!

当我们定位< ul> - 元素? (使用此代码:

 $(document).ready(function() {
            $("#slider").mySlider({
                timeOut: 4000,
                captionOpacity: .7            
            });  

这是代码的一部分,我想知道的部分: 让我们说你有这个HTML

<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<script src="js/mySlider.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $("#slider").mySlider({
            timeOut: 4000,
            captionOpacity: .7            
        });
    });
</script>
<title></title>
</head>
<body>

    <ul id="slider">
        <li>
            <img src="img/image1.jpg" alt="" />
            <div class="top">
                Some nice text captions..
            </div>
        </li>
        <li>
            <img src="img/image2.jpg" alt="" />
            <div class="bottom">
                Some nice text captions..
            </div>
        </li>

    </ul>

</body>
</html>

这里是JS:

  $.fn.mySlider   = function(vars) {

        var timeOut     = vars.timeOut || 4000;
        var capOpacity  = vars.captionOpacity || .7;
        var element     = this;
        var fxDuration  = timeOut/6;

        var items       = $("#" + element[0].id + " li"); //how do add the < li > items inside this array?
        var captions    = $("#" + element[0].id + " li div");
       // console.log(items);
        items.css('display','none');

        captions.css({
            'opacity': capOpacity,
            'display': 'none'
        });

1 个答案:

答案 0 :(得分:0)

如果你想要LI元素的“孩子”,你可以使用:

var items = $("#" + element[0].id + " li").children();

.children(optFilter)

上的jQuery文档

使用过滤器,您可以选择指定只需要DIVA s。

e.g。

$("#" + element[0].id + " li").children("div");//just the <div>s
$("#" + element[0].id + " li").children("a");//just the <a>s