使用jQuery管理选择结果
1。获取元素的个数。
在jQuery中,选择器中的元素数量可以通过大小()方法获得,这与数组中的长度属性类似,并返回整数值,例如:
$(img)的大小()。
获取页面中所有图片的数目。
下面是通过不断点击添加div块并计算页面中块的示例。
复制代码代码如下所示:
{ div
边境:1px solid # 003a75;
背景颜色:# ffff00;
保证金:5px;
填料:20px;
文本对齐:中心;
身高:20px;
宽度:20px;
浮点数:左;
}
}
onclick =函数(){
var = $(),(size)+ 1;获取div的数量(这不是div块)
(document.body美元(美元。追加)(+我+ )); / /添加一个div块
$(#号),Html(我);
}
页面中有0个div块。单击鼠标添加
2。提取元素
在jQuery选择器中,如果要提取一个元素,最直接的方法是使用方括号加上一个序列号,例如;
$(img {标题}){ 1 }
有二元素在所有img标签,设置标题property.jquery还提供获得(指数)提取元素的方法,和下面的代码是完全等同于以上
$(img {标题})得到(1)
get方法可以在不设置任何参数的情况下将元素转换为元素对象数组,如下所示:
复制代码代码如下所示:
{ div
边境:1px solid # 003a75;
背景颜色:# ffff00;
保证金:5px;
填料:20px;
文本对齐:中心;
身高:20px;
宽度:20px;
浮点数:左;
}
}
功能displayleb(NDIV){
对于(var i = 0;i < ndiv.length;i++)
$(文档。体)。追加($(+ NDIV {我} .innerHTML + ));
}
$(函数(){())
Var aDiv = $(div) (.Get); / / into an array of div objects
displayleb(adiv.reverse());
});
一
二
三
四
五
六
上面的代码将6块的网页成为阵列()方法,然后利用得到的数组逆序反向(),并将其发送到displayleb()函数,然后将页面一个接一个。
得到(指数)方法可以获得指定位置的元素,反过来,指数(元)方法可以找到位置的元素的元素located.for例子
var iNum = $(礼)。指数($(李{艾萨克}标题=){ 0 })
以上是整个标签列表标记的位置,而且位置返回整数微粒。作为索引(元素)方法的典型例子。
示例:元素的序列号是通过index()方法获得的。
复制代码代码如下所示:
{ div
边境:1px solid # 003a75;
背景颜色:# ffff00;
保证金:5px;
填料:20px;
文本对齐:中心;
身高:20px;
宽度:20px;
浮点数:左;
}
}
$(函数(){())
单击()添加单击功能
$()。Click(函数(){)
将自己通过关键字介绍获得自己的序列号。
var索引= $()。索引(+)+ 1;
$(#显示),Html(index.tostring());
})
});
一
二
三
四
五
六
单击第一个div。
上面的代码块本身被传递到带有这个关键字的index()方法中,得到它自己的序列号,并使用单击()添加事件来显示序列号。
三.添加、删除、过滤元素
除了获取选择元素之外,jQuery还提供了一系列修改元素集的方法,如向添加()方法添加元素。
$(img { ALT })。添加(img {标题} )
以上代码将设置图像的alt元素,并将标题属性图像组合在一起,以及其他统一调度的方法。
$(img { } { } IMG ALT,标题)
例如,可以添加一组元素来添加CSS属性。
$(img { ALT })。添加(img {标题})。AddClass(altcss )
与Add()方法相反,非()方法可以删除元素集中的元素集。
$({ })。不(标题=艾萨克})
上面的代码表示设置标题属性的所有标记都被选中,但它不包含title值中的艾萨克。
例:
复制代码代码如下所示:
{ div
边境:1px solid # 003a75;
背景颜色:# ffff00;
保证金:5px;
填料:20px;
文本对齐:中心;
身高:20px;
宽度:20px;
浮点数:左;
}
{。altcss
边境:2px固体# 000000;
}
}
$(函数(){())
$(div),(。格林,#蓝),AddClass(altcss );
});
以上jQuery移除绿和蓝的通过不是块(),添加一个altcss风格到剩余的div块。
非()方法接收的参数不包含任何特定元素,但只能通过一般表达式错误,如以下代码
$(李{标题} ),(img {艾萨克}标题* = )
正确的写作方式是:
$({ } })。(艾萨克
除了添加()和非(),jQuery还提供了一个更强大的过滤器()方法来过滤元素。过滤器()可以接受两种类型的参数,一种是与非()方法相同的参数,并且接受一个通用表达式:
$()。筛选器(标题=艾萨克})
上面的代码表明,title值包含艾萨克字符串的李元素的组合被筛选出来。
和
$(标题* =艾萨克})
选定的组合是相同的。
复制代码代码如下所示:
$(函数(){())
$(div)。AddClass(CSS1)。滤波器({等级* =中间})。AddClass(CSS2 );
});
在上面的代码中,4类属性中,Jq首先将所有CSS1块所有div块,然后添加CSS2模式DIV含有中间通过过滤器()方法。
(filter)在参数中不能直接等于匹配(=),只能在前、后(或)、(=)或任何匹配(=)中使用。
另一种类型的过滤器()是一个函数,它保留为返回真实元素,否则集合被排除。函数参数非常强大,允许用户自定义过滤功能。
例如:
复制代码代码如下所示:
$(函数(){())
$(div)。AddClass(CSS1)。滤波器(函数(指数){)
收益指数= 1美元| |(这)。Attr(ID)= =第四;
})。AddClass(CSS2 );
});
上述要求执行:
添加所有div CSS1,然后使用函数返回由滤波器()选择第一个(指数1)在div列表,ID为第四的div元素,和CSS2。添加。
4。查询过滤新元素组
JQ也提供了一些很有用的方法相结合,通过查询获取新的元素的组合。例如,find()方法,通过匹配选择器筛选要素
$(p)。查找()
表示带有查找标记的标记的组合。
完全平等
复制代码代码如下所示:
$()
$(函数(){())
$(p),(跨)。AddClass(CSS1 );
});
你好,你好吗
表示添加CSS1的你好的风格。
此外,还可以使用()方法来检测是否包含指定的元素,例如,通过以下代码检测页面中的图片是否包含在该块中。
无功himg = $(div),(IMG);
想象一下,是()还可以与过滤器()结合使用,是不是很愉快
以上是本文的全部内容,虽然有点长,但还是建议大家仔细阅读一下,希望大家能喜欢它。