zoukankan      html  css  js  c++  java
  • jquery获取的html元素和document获取的元素的区别

    最近通过ocx做了一个视频插件,然后将插件放到html中(想知道的可以看一下)

    因为我要操作这个插件,要播放,停止等,所以我需要获取这个元素,不出意外的,我就用jquery来获取,然后根本无法执行,然后用document来获取,正常执行,具体的如下所示

    //正常执行     
    var obj = document.getElementById("player00");
    obj.testhelloworld();
    
    //无法执行
    var playobj = $('#player00');
    playobj.testhelloworld();

    然后我就在想,这两者有什么区别呢?然后搜索了如下结论

    jquery获取的html元素是jquery对象,可以执行jquery的方法,而document获取的是dom对象,执行的是dom的方法

    顿时释然,我此前一直认为两个是等价的,并为追究为什么dom的方法为什么不能在jquery来执行,现在想想,完全释然了。

    既然这样,那么两者之间怎么互相转化呢?毕竟所得到的对象的内容是一样的。

    jQuery对象转成DOM对象: 
    两种转换方式将一个jQuery对象转换成DOM对象:[index]和.get(index); 
    (1)jQuery对象是一个数据对象,可以通过[index]的方法,来得到相应的DOM对象。 
    如:var $v =$("#v") ; //jQuery对象 
    var v=$v[0]; //DOM对象 
    alert(v.checked) //检测这个checkbox是否被选中 
    (2)jQuery本身提供,通过.get(index)方法,得到相应的DOM对象 
    如:var $v=$("#v"); //jQuery对象 
    var v=$v.get(0); //DOM对象 
    alert(v.checked) //检测这个checkbox是否被选中 

    DOM对象转成jQuery对象: 
    对于已经是一个DOM对象,只需要用$()把DOM对象包装起来,就可以获得一个jQuery对象了。$(DOM对象) 
    如:var v=document.getElementById("v"); //DOM对象 
    var $v=$(v); //jQuery对象 
    转换后,就可以任意使用jQuery的方法了。 
    通过以上方法,可以任意的相互转换jQuery对象和DOM对象。需要再强调注意的是:DOM对象才能使用DOM中的方法,jQuery对象是不可以用DOM中的方法。 

  • 相关阅读:
    Docker容器彻底删除所有容器、删除所有镜像、删除所有卷、删除所有网络
    Fabric区块链浏览器启动报错Error : [ 'Explorer is closing due to channel name [%s] is already exist in DB'...]
    查看docker里面的Postgres数据库里面的信息
    将本地镜像推送到指定docker服务器
    linux 下 配置C++ 开发环境
    Go 发送邮件
    Ubuntu下使用nginx发布vue项目
    C++多线程之条件变量
    C/C++ 递归
    STL容器概述
  • 原文地址:https://www.cnblogs.com/ningheshutong/p/6681074.html
Copyright © 2011-2022 走看看