jQuery学习笔记_04day

原生js中创建节点:document.write();innerHTML;
document.createElement();设置节点存在内存中…

jQuery如何创建节点呢?

html();
跟原生js中的innerHTML相似
设置或者获取内容的

获取内容:html()方法不给参数
获取到元素的所有内容

设置内容:html()方法给参数
会把原来的内容给覆盖
如果设置的内容中包含了标签,是会把标签给解析出来的

$('#div1').html('我是设置的内容<a href="https://www.baidu.com">百度一下</a>')

$()
确实能创建元素,但是创建的元素只存在于内存中,如果要在页面上显示,就要追加…
与原生js的document.createElement()节点相似

 $('#btn').click(function(){
        var $link=$('<a href="http://news.baidu.com">我是新闻</a>');
        //console.log($link);
        //追加节点
        $('#div1').append($link);
    })

添加节点
append()
父元素.append(子元素) 作为最后一个子节点,添加到父元素
prepend()
父元素.perpend(子元素) 作为第一个元素
before()
元素A.before(元素B);//把元素B插入到元素A的前面,作为兄弟元素添加
after()
元素A.after(元素B) //把元素B插入到元素A的后面,作为兄弟元素添加
appenTo()
子元素.appendTo(父元素);把子元素作为父元素的最后一个子元素添加

empty()清空节点

$(’#ul1’).html("");
不推荐使用,有可能会造成内存泄漏,不安全

remove()移除节点

clone()克隆节点
只存于内存中
如果要在页面上显示,就应该追加到页面上
//jQuery中克隆节点:clone()
//只存在于内存中,如果要在页面上显示,就应该追加到页面上
//clone()方法参数不管是true还是false,都是会克隆到后代节点的
//clone()方法参数是true表示会把事件一起克隆到,参数如果是false就不会克隆事件。
//不给参数,默认是false

$(function(){
        $('#div1').click(function(){
            alert('哈哈哈,我被点击了...')
        })
    $('#clone').click(function(){
      var $cloneDiv=$('#div1').clone(true);
      $cloneDiv.attr('id','div2')
    //   console.log($cloneDiv);
    $('body').append($cloneDiv);
    })
    })

val()
设置或者获取表单元素的值
原生js是通过value属性来获取或者设置表单元素的值
val()不给参数就是获取
val()方法,给参数就是设置

attr()设置属性

//设置单属性
  //$('img').attr('src','992.gif');//以前有src属性,更改这个属性
  //$('img').attr('aaa','hahah');//修改自定义属性
 //$('img').attr('bbb','bbb');//如果元素原来没有这个属性,那就是添加属性
 //设置多属性
  $('img').attr({
      src:'./img/taobao/1.jpg',
      aaa:'hahaha',
      bbb:'bbb',
     });

如果没有这个属性,获取到的值就是undefined;

removeAttr()移除属性

 //移除属性
        $('#btn3').click(function(){
            //移除单属性
            $('img').removeAttr('alt');
            //$('img').removeAttr('aaa');
            //$('img').removeAttr('bbb');

            $('img').removeAttr(alt,aaa,bbb);//移除多属性
        });

prop()
在jQuery1.6之后,对于checked,selected,disabled这类boolean类型的
属性来说,不能用attr方法,只能用prop方法

$('#btn1').click(function(){
           console.log($('#ckb1').prop('checked'));
        //如果多选框是选中状态返回一个true,如果多选框是取消选中状态那返回就是一个false
        });
//有一类属性比如:checked写在元素的身上就表示选中,没有写在元素的身上就表示没有选中
        //这一类属性用原生js操作
        // document.getElementById("btn1").οnclick=function(){
            //设置操作
            //document.getElementById("ckb1").checked=false;
           //获取操作
           //console.log(document.getElementById("ckb1").checked);
            // }

第四课…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值