javascript中html字符串转化为jquery dom对象的方法


Posted in Javascript onAugust 27, 2015

原html字符串如下:

var text="<div id='overLay' style='width:50px;height:60px;background:url(imgs/back.png) left top no-repeat; position: absolute;'>"
        + "<img style='margin-left:4px;margin-top: 3px;' src='ima.png' width='43px' height='43px'/>"
        + "</div>";

 

1、下面使用Jquery库将text字符串变量转为Jquery对象。

Jquery代码如下:

alert($(text).html());

其中$(text)就text字符串转为了一个Jquery对象,最后将该Jquery对象的html()将html内容以字符串的形式输出,结果如下:

<img style='margin-left:4px;margin-top: 3px;' src='ima.png' width='43px' height='43px'/>

说明了,$(text)Jquery对象代表的是最外层的html元素div。

2、将Jquery对象和DOM对象之间互转。

代码如下:

var element= $(text).get(0) //element就是一个dom对象
var jqueryobj=$(element);//jqueryobj就是一个Jquery对象。

注意:DOM对象和Jquery对象区别

在我理解,Jquery对象和DOM对象都是封装的html元素,可以对html元素节点进行操作,方便编程,但是他们之间的方法有些是不能共用的,如Jquery对象的html()方法,DOM对象就使用不了;而DOM对象的GetElementById(),Jquery对象也不能使用。所以在必须要的时候可以进行相互转换。

3、使用js代码将text字符串变量转为DOM对象。

js代码如下:

/*字符串转dom对象*/
function loadXMLString(txt) 
{
  try //Internet Explorer
   {
     xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
     xmlDoc.async="false";
     xmlDoc.loadXML(txt);
     //alert('IE');
     return(xmlDoc); 
   }
  catch(e)
   {
     try //Firefox, Mozilla, Opera, etc.
      {
        parser=new DOMParser();
        xmlDoc=parser.parseFromString(txt,"text/xml");
       //alert('FMO');
        return(xmlDoc);
      }
     catch(e) {alert(e.message)}
   }
  return(null);
}

其中js代码将text字符串转为DOM对象与浏览器有关,所以。。。。。。分开写。

这样就实现了html字符串向Jquery对象和DOM对象的转换。

jQuery对象与dom对象相互转换方法介绍

刚开始学习jQuery,可能一时会分不清楚哪些是jQuery对象,哪些是DOM对象。至于DOM对象不多解释,我们接触的太多了,下面重点介绍一下jQuery,以及两者相互间的转换。

什么是jQuery对象?

---就是通过jQuery包装DOM对象后产生的对象。jQuery对象是jQuery独有的,其可以使用jQuery里的方法。

比如:

$("#test").html() 意思是指:获取ID为test的元素内的html代码。其中html()是jQuery里的方法

这段代码等同于用DOM实现代码:

document.getElementById("id").innerHTML;
虽然jQuery对象是包装DOM对象后产生的,但是jQuery无法使用DOM对象的任何方法,同理DOM对象也不能使用jQuery里的方法.乱使用会报错。比如:$("#test").innerHTML、document.getElementById("id").html()之类的写法都是错误的。

还有一个要注意的是:用#id作为选择符取得的是jQuery对象与document.getElementById("id")得到的DOM对象,这两者并不等价。请参看如下说的两者间的转换。

既然jQuery有区别但也有联系,那么jQuery对象与DOM对象也可以相互转换。在再两者转换前首先我们给一个约定:如果一个获取的是 jQuery对象,那么我们在变量前面加上$,如:var $variab = jQuery对象;如果获取的是DOM对象,则与习惯普通一样:var variab = DOM对象;这么约定只是便于讲解与区别,实际使用中并不规定。

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中的方法。

Javascript 相关文章推荐
用jquery实现等比例缩放图片效果插件
Jul 24 Javascript
jQuery :nth-child前有无空格的区别分析
Jul 11 Javascript
jquery属性选择器not has怎么写 行悬停高亮显示
Nov 13 Javascript
使用jquery局部刷新(jquery.load)从数据库取出数据
Jan 22 Javascript
实例讲解js验证表单项是否为空的方法
Jan 09 Javascript
jQuery自定义图片上传插件实例代码
Apr 04 jQuery
javascript 封装Date日期类实例详解
May 28 Javascript
jQuery实现web页面樱花坠落的特效
Jun 01 jQuery
tween.js缓动补间动画算法示例
Feb 13 Javascript
Vue实现手机计算器
Aug 17 Javascript
小程序角标的添加及绑定购物车数量进行实时更新的实现代码
Dec 07 Javascript
vue中利用three.js实现全景图的完整示例
Dec 07 Vue.js
javascript 动态修改css样式方法汇总(四种方法)
Aug 27 #Javascript
JavaScript实现带箭头标识的多级下拉菜单效果
Aug 27 #Javascript
javascript引用类型之时间Date和数组Array
Aug 27 #Javascript
jQuery实现的数值范围range2dslider选取插件特效多款代码分享
Aug 27 #Javascript
jQuery手机拨号界面特效代码分享
Aug 27 #Javascript
JS实现自动切换文字的导航效果代码
Aug 27 #Javascript
javascript实现自动输出文本(打字特效)
Aug 27 #Javascript
You might like
用 php 编写的日历
2006/10/09 PHP
PHP去除数组中重复的元素并按键名排序函数
2008/08/18 PHP
php检测网页是否被百度收录的函数代码
2013/10/09 PHP
Linux下安装oracle客户端并配置php5.3
2014/10/12 PHP
PHP实现的redis主从数据库状态检测功能示例
2017/07/20 PHP
js可突破windows弹退效果代码
2008/08/09 Javascript
JavaScript面向对象之静态与非静态类
2010/02/03 Javascript
jQuery前台数据获取实现代码
2011/03/16 Javascript
教你用jquery实现iframe自适应高度
2014/06/11 Javascript
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
2014/06/24 Javascript
javascript上下方向键控制表格行选中并高亮显示的方法
2015/02/13 Javascript
nodejs修复ipa处理过的png图片
2016/02/17 NodeJs
一种Javascript解释ajax返回的json的好方法(推荐)
2016/06/02 Javascript
jQuery动态生成表格及右键菜单功能示例
2017/01/13 Javascript
JSON 数据详解及实例代码分析
2017/01/20 Javascript
angular写一个列表的选择全选交互组件的示例
2018/01/22 Javascript
让axios发送表单请求形式的键值对post数据的实例
2018/08/11 Javascript
js实现轮播图的完整代码
2020/10/26 Javascript
浅谈webpack4 图片处理汇总
2018/09/12 Javascript
在 Angular-cli 中使用 simple-mock 实现前端开发 API Mock 接口数据模拟功能的方法
2018/11/28 Javascript
vue实现固定位置显示功能
2019/05/30 Javascript
vue导航栏部分的动态渲染实例
2019/11/01 Javascript
vue3.0中使用element的完整步骤
2021/03/04 Vue.js
Python yield使用方法示例
2013/12/04 Python
python读取csv文件并把文件放入一个list中的实例讲解
2018/04/27 Python
python爬虫之爬取百度音乐的实现方法
2019/08/24 Python
python进程池实现的多进程文件夹copy器完整示例
2019/11/27 Python
python保存log日志,实现用log日志画图
2019/12/24 Python
Python selenium爬虫实现定时任务过程解析
2020/06/08 Python
通过实例了解python__slots__使用方法
2020/09/14 Python
css3实现信纸/同学录效果的示例代码
2018/12/11 HTML / CSS
localStorage、sessionStorage使用总结
2017/11/17 HTML / CSS
学子宴致辞大全
2015/07/27 职场文书
2016年共产党员个人承诺书
2016/03/24 职场文书
Windows 11要来了?微软文档揭示Win11太阳谷 / Win10有两个不同版本
2021/11/21 数码科技
python保存图片的四个常用方法
2022/02/28 Python