javascript 如何 html 字符串 转化 jquery 对象 或者 dom 栏目 JavaScript 繁體版
原文   原文链接

  最近在开发百度地图相关的一个应用,须要从硬编码的html字符串中提取本身想要的元素以及属性信息。可是在js中或者jQuery中操做元素节点以及属性都是使用DOM对象或者jquery对象。下面将介绍如何把html字符串转为Jquery对象或者DOM对象。html

  原html字符串以下:jquery

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>";

 

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

    Jquery代码以下:浏览器

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

 

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

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

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

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

    代码以下:spa

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

 

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

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

 

  三、使用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对象的转换。

相关文章
相关标签/搜索
每日一句
    每一个你不满意的现在,都有一个你没有努力的曾经。
本站公众号
   欢迎关注本站公众号,获取更多信息