美文网首页
jQuery的基础DOM,CSS操作篇

jQuery的基础DOM,CSS操作篇

作者: 满嘴骚话 | 来源:发表于2017-09-25 15:02 被阅读0次

    基础 DOM 和 CSS 操作

    1.设置元素及内容

    方法名 描述
    html() 获取元素中 HTML 内容
    html(value) 设置元素中 HTML 内容
    text() 获取元素中文本内容
    text(value) 设置原生中文本内容
    val() 获取表单中的文本内容
    val(value) 设置表单中的文本内容

    在常规的 DOM 元素中,我们可以使用 html()和 text()方法获取内部的数据。html()方法可以获取或设置 html 内容,text()可以获取或设置文本内容。

    $('#box').html(); //获取 html 内容
    $('#box').text(); //获取文本内容,会自动清理 html 标签
    $('#box').html('<em>www.li.cc</em>'); //设置 html 内容
    $('#box').text('<em>www.li.cc</em>'); //设置文本内容,会自动转义 html标签
    

    注意:当我们使用 html()或 text()设置元素里的内容时,会清空原来的数据。而我们期望能够追加数据的话,需要先获取原本的数据

    $('#box').html($('#box').html() + '<em>www.li.cc</em>'); //追加数据如果元素是表单的话,jQuery 提供了 val()方法进行获取或设置内部的文本数据。
    $('input').val(); //获取表单内容
    $('input').val('www.li.cc'); //设置表单内容
    

    如果想设置多个选项的选定状态,比如下拉列表、单选复选框等等,可以通过数组传递操作。

    $("input").val(["check1","check2", "radio1" ]); //value 值是这些的将被选定
    

    2.元素属性操作

    方法名 描述
    attr(key) 获取某个元素 key 属性的属性值
    attr(key, value) 设置某个元素 key 属性的属性值
    attr({key1:value2, key2:value2...}) 设置某个元素多个 key 属性的属性值
    attr(key, function (index, value) {}) 设置某个元素 key 通过 fn 来设置

    3.元素样式操作

    方法名 描述
    css(name) 获取某个元素行内的 CSS 样式
    css([name1, name2, name3]) 获取某个元素行内多个 CSS 样式
    css(name, value) 设置某个元素行内的 CSS 样式
    css(name, function (index, value) ) 设置某个元素行内的 CSS 样式
    css({name1 : value1, name2 : value2}) 设置某个元素行内多个 CSS 样式
    addClass(class) 给某个元素添加一个 CSS 类
    addClass(class1 class2 class3...) 给某个元素添加多个 CSS 类
    removeClass(class) 删除某个元素的一个 CSS 类
    removeClass(class1 class2 class3...) 删除某个元素的多个 CSS 类
    toggleClass(class) 来回切换默认样式和指定样式
    toggleClass(class1 class2 class3...) 同上
    toggleClass(class, switch) 来回切换样式的时候设置切换频率
    toggleClass(function () {}) 通过匿名函数设置切换的规则
    toggleClass(function () {}, switch) 在匿名函数设置时也可以设置频率
    toggleClass(function (i, c, s) {}, switch) 在匿名函数设置时传递三个参数

    在 CSS 获取上,我们也可以获取多个 CSS 样式,而获取到的是一个对象数组,如果用传统方式进行解析需要使用 for in 遍历。

    var box = $('div').css(['color', 'height', 'width']); //得到多个 CSS 样式的数组对象
    for (var i in box) { //逐个遍历出来
    alert(i + ':' + box[i]);
    }
    

    jQuery 提供了一个遍历工具专门来处理这种对象数组,$.each()方法,这个方法可以轻松的遍历对象数组。

    $.each(box, function (attr, value) { //遍历 JavaScript 原生态的对象数组
    alert(attr + ':' + value);
    });
    

    使用$.each()可以遍历原生的 JavaScript 对象数组,如果是 jQuery 对象的数组怎么使用.each()方法呢?

    $('div').each(function (index, element) { //index 为索引,element 为元素 DOM
    alert(index + ':' + element);
    });
    

    4.CSS 方法

    方法名 描述
    width() 获取某个元素的长度
    width(value) 设置某个元素的长度
    width(function (index, width) {}) 通过匿名函数设置某个元素的长度
    height() 获取某个元素的长度
    height(value) 设置某个元素的长度
    height(function (index, width) {}) 通过匿名函数设置某个元素的长度
    innerWidth() 获取元素宽度,包含内边距 padding
    innerHeight() 获取元素高度,包含内边距 padding
    outerWidth() 获取元素宽度,包含边框 border 和内边距 padding
    outerHeight() 获取元素高度,包含边框 border 和内边距 padding
    outerWidth(ture) 同上,且包含外边距
    outerHeight(true) 同上,且包含外边距
    方法名 描述
    offset() 获取某个元素相对于视口的偏移位置
    position() 获取某个元素相对于父元素的偏移位置
    scrollTop() 获取垂直滚动条的值
    scrollTop(value) 设置垂直滚动条的值
    scrollLeft() 获取水平滚动条的值
    scrollLeft(value) 设置水平滚动条的值

    元素偏移方法

    方法名 描述
    offset() 获取某个元素相对于视口的偏移位置
    position() 获取某个元素相对于父元素的偏移位置
    scrollTop() 获取垂直滚动条的值
    scrollTop(value) 设置垂直滚动条的值
    scrollLeft() 获取水平滚动条的值
    scrollLeft(value) 设置水平滚动条的值



    上一篇: jQuery的基础DOM,CSS操作篇
    下一篇: jQuery的DOM节点操作

    相关文章

      网友评论

          本文标题:jQuery的基础DOM,CSS操作篇

          本文链接:https://www.haomeiwen.com/subject/rmqdextx.html