jQuery的基本结构

时间:2012-01-16 09:41:29

标签: jquery

我想了解那条线的含义:

var oViewport = { obj: $('.viewport', root) };  

这是插件tinyscrollbar中的一行。有人可以向我解释这条线的价值吗?我真的寻找答案,但没有找到答案。我感谢您的帮助。

4 个答案:

答案 0 :(得分:2)

它创建一个对象文字并将其分配给名为oViewport的变量:

var oViewport = {}; //Empty object literal

该对象有一个名为obj的属性,其值为jQuery对象:

var oViewport = { obj: $() }; //Property with jQuery object as value

jQuery对象查找具有类“viewport”的所有元素,它们是root的后代。 root是选择器的上下文:

$(".viewport", root); //Select all .viewport elements within root

答案 1 :(得分:1)

var oViewport = { obj: $('.viewport', root) };

在此代码中,使用object literal语法(例如{ key: value })创建对象并将其分配给新变量oViewport

该对象有一个键或属性“obj”,其值是使用参数$'.viewport调用时名为root的函数的结果

由于这是jQuery,$是主jQuery selector function,在这个例子中,它选择带有CSS类“viewport”的DOM元素,但只选择那些是对象的子元素{{1} (称为“上下文”,它本身可能是一个DOM元素)。

上面的代码大致类似于以下代码:

root

答案 2 :(得分:0)

变量oViewport定义为对象{obj: ...};此对象中obj键的值是变量.viewport上下文中的root的Sizzle选择器(选择viewportroot内的所有DOM元素,通常也是一些DOM元素。

答案 3 :(得分:0)

1. $('.viewport', root) 
        => this finds all elements having class viewport with context as root.

2. { obj: $('.viewport', root) }; 
       => creating a object literal with "obj" as property 
                       and the elements objects found above as value.

3. var oViewport = { obj: $('.viewport', root) };   
            => assigning the created object literal to variable "oViewport".