The original html string is as follows:
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. Use the Jquery library to convert the text string variable into a Jquery object.
The Jquery code is as follows:
alert($(text).html());
Where $(text) is the text string converted into a Jquery object, and finally the html() of the Jquery object is used to output the html content in the form of a string , the result is as follows:
<img style='margin-left:4px;margin-top: 3px;' src='ima.png' width='43px' height='43px'/>
It shows that the $(text)Jquery object represents the outermost html element div.
2. Convert Jquery objects and DOM objects to each other.
The code is as follows:
var element= $(text).get(0) //element就是一个dom对象 var jqueryobj=$(element);//jqueryobj就是一个Jquery对象。
Note: The difference between DOM objects and Jquery objects
As I understand it, Jquery objects and DOM objects are both encapsulated html Elements can operate on html element nodes to facilitate programming, but some of their methods cannot be shared. For example, the html() method of the Jquery object cannot be used with the DOM object; while the GetElementById() of the DOM object cannot be used with the Jquery object. Can't be used either. Therefore, mutual conversion can be performed when necessary.
3. Use js code to convert the text string variable into a DOM object.
The js code is as follows:
/*字符串转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); }
The js code converting the text string into a DOM object is related to the browser, so. . . . . . Write separately.
In this way, the conversion of html strings to Jquery objects and DOM objects is realized.
Introduction to the mutual conversion methods between jQuery objects and dom objects
When you first start learning jQuery, you may not be able to tell which are jQuery objects and which are DOM objects. As for the DOM object, there is not much explanation. We have come into contact with too many. Let’s focus on jQuery and the conversion between the two.
What is a jQuery object?
---It is the object generated by wrapping the DOM object through jQuery. The jQuery object is unique to jQuery and can use methods in jQuery.
For example:
$("#test").html() means: get the html code in the element with ID test. Among them, html() is a method in jQuery
This code is equivalent to using DOM to implement the code:
document.getElementById("id").innerHTML;
Although the jQuery object is a wrapper It is generated after the DOM object, but jQuery cannot use any method of the DOM object. Similarly, the DOM object cannot use the methods in jQuery. If used indiscriminately, an error will be reported. For example: $("#test").innerHTML, document.getElementById("id").html() and other writing methods are wrong.
Another thing to note is that the jQuery object obtained by using #id as the selector and the DOM object obtained by document.getElementById("id") are not equivalent. Please see the conversion between the two below.
Since jQuery is different but also related, jQuery objects and DOM objects can also be converted to each other. Before converting the two, we first make a convention: if a jQuery object is obtained, then we add $ in front of the variable, such as: var $variab = jQuery object; if a DOM object is obtained, it is the same as usual. : var variab = DOM object; this convention is only for convenience of explanation and distinction, and is not stipulated in actual use.
Convert jQuery object to DOM object:
Two conversion methods convert a jQuery object into DOM object: [index] and .get(index);
(1 )jQuery object is a data object, and the corresponding DOM object can be obtained through the [index] method.
For example:
var $v =$("#v") ; //jQuery对象 var v=$v[0]; //DOM对象 alert(v.checked) //检测这个checkbox是否被选中
(2) jQuery itself provides, through the .get(index) method, the corresponding DOM object is obtained
For example:
var $v=$("#v"); //jQuery对象 var v=$v.get(0); //DOM对象 alert(v.checked) //检测这个checkbox是否被选中
Convert DOM object to jQuery object:
For a DOM object that is already a DOM object, you only need to wrap the DOM object with $() to get a jQuery object . $(DOM object)
For example:
var v=document.getElementById("v"); //DOM对象 var $v=$(v); //jQuery对象
After conversion, you can use any jQuery method.
Through the above methods, jQuery objects and DOM objects can be converted to each other at will. What needs to be emphasized again is that only DOM objects can use methods in DOM, and jQuery objects cannot use methods in DOM.
For more related articles on how to convert html strings in javascript into jquery dom objects, please pay attention to the PHP Chinese website!