当前位置: 代码迷 >> Web前端 >> 用jquery操作属性跟类名
  详细解决方案

用jquery操作属性跟类名

热度:232   发布时间:2012-10-09 10:21:45.0
用jquery操作属性和类名
用jquery操作属性和类名
文章分类:Web前端
attr( name )

参数:* String

返回值:* Object

取得第一个匹配元素的属性值。通过这个方法可以方便地从第一个匹配元素中获取一个属性的值。如果第一个匹配元素没有这个属性,则返回“undefined”

实例

取得页面中第一个em元素的title属性

var title = $("em").attr("title");
$("div").text(title);

attr( properties )

参数: * Map

返回值: * jQuery

将一个“名/值”形式的对象设置为所有匹配元素的属性。 这是一种在所有匹配元素中批量设置很多属性的最佳方式。注意,如果需要设置一个类属性,则必须使用类名作为名,或使用addClass和removeClass来操作

实例

给img元素添加多项属性

$("img").attr({
        src: "/images/hat.gif",
        title: "jQuery",
        alt: "jQuery Logo"
});
$("div").text($("img").attr("alt"));

attr( key, value )

参数:
    * String
    * Object

返回值:
    * jQuery

为所有匹配的元素设置一个属性值

实例

禁用所有索引数大于0的按钮

$("button:gt(0)").attr("disabled","disabled");

attr( key, fn )

参数:
    * String
    * Function

返回值:
    * jQuery

为所有匹配的元素设置一个计算的属性值。不提供值,而是提供一个函数,由这个函数计算的值作为属性值。fn参数可以带有一个参数,此参数为当前元素在jQuery集合中的索引数,fn中的this指代这个元素

实例

针对div元素在页面中的位置来添加id属性值

$("div").attr("id", function (arr) {
        return "div-id" + arr;
}).each(function () {
        $("span", this).html("(ID = '<b>" + this.id + "</b>')");
});

removeAttr( name )

参数:* String

返回值:* jQuery

从每一个匹配的元素中删除一个属性

实例

点击按钮后使此按钮的下一个输入框可编辑

$("button").click(function () {
        $(this).next().removeAttr("disabled").focus().val("editable now");
    });

addClass( class )
参数:
    * String(一个或多个class名,多个class以空格分开)

返回值:
    * jQuery

为每个匹配的元素添加指定的类名

实例

给匹配的元素添加“selected”类

$("p:last").addClass("selected");

给匹配的元素添加“selected”和“highlight”类

$("p:last").addClass("selected highlight");

hasClass( class )
参数:
    * String
返回值:
    * Boolean

在匹配的元素集合中,如果至少有一个元素具有指定的class类,则返回true,否则返回false

实例
在匹配的元素集合中找出class属性值为“selected”的元素

$("div#result1").append($("p:first").hasClass("selected").toString());
$("div#result2").append($("p:last").hasClass("selected").toString());
$("div#result3").append($("p").hasClass("selected").toString());

removeClass( class )
参数:
    * String (可选)
返回值:
    * jQuery

从所有匹配的元素中删除全部或者指定的类,多个类名之间用空格分开。如果不指定类名,则删除全部的类

实例

从匹配的元素集合中删除“blue”类

$("p:even").removeClass("blue");

从匹配的元素集合中删除“blue”和“under”类

$("p:odd").removeClass("blue under");

从匹配的元素集合中删除所有类属性

$("p:eq(1)").removeClass();

toggleClass( class )

参数:
    * String

返回值:
    * jQuery

如果存在(不存在)就删除(添加)一个类(只支持单独的类名)

实例

点击时切换p元素的highlight类的有无

$("p").click(function () {
        $(this).toggleClass("highlight");
});

html( )
返回值:
    * String

取得第一个匹配元素的html内容(使用innerHTML方法)。这个函数不能用于XML文档(虽然可以用于XHTML文档)。

实例

点击一个段落,将它的HTML代码转化成内容显示

$("p").click(function () {
        var htmlStr = $(this).html();
        $(this).text(htmlStr);
});

html( val )
参数:
    * String

返回值:
    * jQuery

设置每一个匹配元素的html内容。这个函数不能用于XML文档(虽然可以用于XHTML文档)。

实例

将每一个div元素中的代码设置为指定的HTML代码

$("div").html("<span class='red'>Hello <b>Again</b></span>");

将每一个div元素中的代码设置为指定的HTML代码,然后再添加文本和style属性

$("div").html("<b>Wow!</b> Such excitement...");
$("div b").append(document.createTextNode("!!!")).css("color", "red");

text( )
返回值:
    * String

取得所有匹配元素的内容。结果是由所有匹配元素包含的文本内容组合起来的文本。这个方法对HTML和XML文档都有效

实例

取得第一段中的文本,将文本作为HTML代码添加到最后一段中

var str = $("p:first").text();
$("p:last").html(str);

text( val )

参数:

    * String

返回值:

    * jQuery

设置所有匹配元素的文本内容。这个函数与html()函数类似,但是将给定的<和>字符转义以HTML字符实体代替

实例

将段落中的文本设置为<b>Some</b> new text.

$("p").text("<b>Some</b> new text.");

val( )

返回值:

    * String, Array

获得第一个匹配元素的当前值。在jQuery1.2中,此方法对包括select在内的所有元素都有效。对于多选项(multiple select),则返回一个数组。

实例

取得输入框的值

$("input").keyup(function () {
        var value = $(this).val();
        $("p").text(value);
}).keyup();

从单选项中取得一个值,从多选项中取得一个数组

function displayVals() {
        var singleValues = $("#single").val();
        var multipleValues = $("#multiple").val() || [];
        $("p").html("<b>Single:</b> " + singleValues + " <b>Multiple:</b> " +  multipleValues.join(", "));
}

$("select").change(displayVals);
displayVals();

val( val )

参数:

    * String

返回值:

    * jQuery

设置每一个匹配元素的值。在jQuery 1.2中,此方法也可以设置select元素的值,但是需要指定恰当的选项值。

实例

设置输入框的值

$("button").click(function () {
        var text = $(this).text();
        $("input").val(text);
});

val( val )

参数:

    * Array[String]

返回值:

    * jQuery

选择或设置所有的单选按钮、复选框和下拉列表为指定的val值

实例

设置单选按钮、多选菜单和选择框

$("#single").val("Single2");
$("#multiple").val(["Multiple2", "Multiple3"]);
$("input").val(["check2", "radio1"]);

  相关解决方案