0

xmlDomオブジェクトのjQueryラッパーと単純な古いhtmlマークアップの概念的および機能的な違いを理解していません。

両方でjQueryメソッドを呼び出すことはできますが、動作が異なるため、少し驚いています。html/ xmlマークアップをjQueryでラップでき、ほぼ同じように動作すると思いました。

xmlDOMプラグインを使用して、jQueryでラップされたxmlDomオブジェクトを取得しています。

http://outwestmedia.com/jquery-plugins/xmldom/

ここにフィドルがあります:

http://jsfiddle.net/YL8bY/

<body>

<b>xmlDOM Wrapper</b>  <br />

XML fragment:  <br />
<div id="xmldomdiv1"></div>

HTML fragment:  <br />
<div id="xmldomdiv2"></div>


<b>jQuery Wrapper </b>  <br />

XML fragment:  <br />
<div id="jqdiv1"></div>

HTML fragment:  <br />
<div id="jqdiv2"></div>

</body>

<script>

var xmlfragment = '<book><title>My Book Title</title><author>Joe Author</author></book>';
var htmlfragment = '<div><p>My Book Title</p><p>Joe Author</p></div>';

var $xmldomxml = $.xmlDOM( xmlfragment );
var $xmldomhtml = $.xmlDOM( htmlfragment );

var $jqxml = $( xmlfragment );
var $jqhtml = $( htmlfragment );

$('#xmldomdiv1').append( $xmldomxml.find('title, author'));
$('#xmldomdiv2').append( $xmldomhtml.find('p'));

$('#jqdiv1').append( $jqxml.find('title, author'));
$('#jqdiv2').append( $jqhtml.find('p'));

console.log("Here's fragment vars:  ");
console.log($xmldomxml);
console.log($xmldomhtml);
console.log($jqxml);
console.log($jqhtml);

</script>
4

0 に答える 0