zoukankan      html  css  js  c++  java
  • 属性与样式

    .attr()与.removeAttr()

    jQuery中用attr()方法来获取和设置元素属性.

    1. attr(属性名):获取属性的值
    2. attr(属性名,属性值):设置属性的值
    3. attr(属性名,函数值):设置属性的函数值
    4. attr(attributes):给指定元素设置多个属性值。例如{属性名一:"属性值一",属性名二:"属性值二"}

    .removeAttr( attributeName ) : 为匹配的元素集合中的每个元素中移除一个属性(attribute)

    Attribute和Property翻译为“特性”和“属性”。Attribute就是dom节点自带的属性,例如:html中常用的id、class、title、align等。获取Attribute就需要用attr,获取Property就需要用prop。

    html()及.text()

    .html()方法

    获取集合中第一个匹配元素的HTML内容 或 设置每一个匹配元素的html内容。

    1. .html() 不传入值,就是获取集合中第一个匹配元素的HTML内容。
    2. .html( htmlString ) 设置每一个匹配元素的html内容。

    .html()方法内部使用的是DOM的innerHTML属性来处理的,这个操作是针对整个HTML内容(不仅仅只是文本内容)

    .text()

    得到匹配元素集合中每个元素的文本内容结合,.text()结果返回一个字符串,包含所有匹配元素的合并文本。

    .html处理的是元素内容,.text处理的是文本内容。

    .val()

    .val()方法主要是用于处理表单元素的值,比如 input, select 和 textarea。

    1. val()无参数,获取匹配的元素集合中第一个元素当前值。
    2. val(value)设置匹配的元素集合中每个元素的值。
    3. 通过.val()处理select元素, 当没有选择项被选中,它返回null
    4. 如果select元素有multiple(多选)属性,并且至少一个选择项被选中, .val()方法返回一个数组,这个数组包含每个选中选择项的值

    .html(),.text()和.val()的差异

    1. .html(),.text(),.val()三种方法都是用来读取选定元素的内容;只不过.html()是用来读取元素的html内容(包括html标签),.text()用来读取元素的纯文本内容,包括其后代元素,.val()是用来读取表单元素的"value"值。其中.html()和.text()方法不能使用在表单元素上,而.val()只能使用在表单元素上;另外.html()方法使用在多个元素上时,只读取第一个元素;.val()方法和.html()相同,如果其应用在多个元素上时,只能读取第一个表单元素的"value"值,但是.text()和他们不一样,如果.text()应用在多个元素上时,将会读取所有选中元素的文本内容。
    2. .html(htmlString),.text(textString)和.val(value)三种方法都是用来替换选中元素的内容,如果三个方法同时运用在多个元素上时,那么将会替换所有选中元素的内容。
    3. .html(),.text(),.val()都可以使用回调函数的返回值来动态的改变多个元素的内容。

    增加样式.addClass()

    通过动态改变类名(class),可以让其修改元素呈现出不同的效果。

    <p class="orgClass">
    $("p").addClass("newClass")
    

    等同于:

    <p class="orgClass newClass">
    

    那么p元素的class实际上是 class="orgClass newClass"样式只会在原本的类上继续增加,通过空格分隔.

    样式操作.css()

    动态的修改style属性我们只要使用css()方法就可以实现了。

    $('.aaron').css(
                'background','yellow'
            )
    

    等同于

     $('.aaron').css({
                'background':'yellow'
            })
    

    .css()与.addClass()设置样式的区别

    • .addClass()方法是通过增加class名的方式,那么这个样式是在外部文件或者内部样式中先定义好的,等到需要的时候在附加到元素上
    • 通过.css()方法处理的是内联样式,直接通过元素的style属性附加到元素上的
    • .addClass与.css方法各有利弊,一般是静态的结构,都确定了布局的规则,可以用addClass的方法,增加统一的类规则
    • 如果是动态的HTML结构,在不确定规则,或者经常变化的情况下,一般多考虑.css()方式.
  • 相关阅读:
    ubuntu16.04左边栏图标效果设置
    VMware虚拟机 Ubuntu 16.04 安装 VMware Tools
    微信换取openid的值
    thinkphp关于T方法
    Think关于循环的事
    base64格式转换为图片
    Think视图模型格式
    thinkphp里多表事务
    ThinkPHP数据库驱动之mysql事物回滚
    webhook是啥?
  • 原文地址:https://www.cnblogs.com/zhaozihan/p/7295300.html
Copyright © 2011-2022 走看看