jQuery 操作 XML(解決大小寫問題)
jQuery操作xml時候,不同瀏覽器會產生大小寫不一致的問題, 參考了下網上一些的例子,寫的很簡單易懂, 簡單改了寫程式碼做個標記。
/**
* @description
* Operation of the XML
* @deprecated
* JQuery.js
* @version 1.0
* Date: 2013-09-16
*/
(function($) {
function mnpXml(opCode, xmlStr) {
return this.each(function() {
if (typeof xmlStr != "string") return;
if (!jQuery.isXMLDoc(this)) return;
var node = $.parseXML(xmlStr).firstChild.cloneNode(true);
switch (opCode) {
case "append":
this.appendChild(node);
break;
case "prepend":
if (this.childNodes.length > 0)
this.insertBefore(node, this.firstChild);
else
this.appendChild(node);
break;
case "after":
if (this.nextSibling)
this.parentNode.insertBefore(node, this.nextSibling);
else
this.parentNode.appendChild(node);
break;
case "before":
this.parentNode.insertBefore(node, this);
break;
}
});
}
$.fn.extend({
appendXml: function(s) {
return mnpXml.call(this, "append", s);
},
prependXml: function(s) {
return mnpXml.call(this, "prepend", s);
},
afterXml: function(s) {
return mnpXml.call(this, "after", s);
},
beforeXml: function(s) {
return mnpXml.call(this, "before", s);
},
xml: function() {
var elem = this[0];
return elem.xml || (new XMLSerializer()).serializeToString(elem);
},
innerXml: function() {
var s = this.xml();
var i = s.indexOf(">"), j = s.lastIndexOf("<");
if (j > i)
return s.substring(i + 1, j);
else
return "";
}
});
$.extend(jQuery, {
parseXml: function(xmlStr) {
if (window.ActiveXObject) {
var xd = new ActiveXObject("Microsoft.XMLDOM");
xd.async = false;
xd.loadXML(xmlStr);
return xd;
}
else if (typeof DOMParser != "undefined") {
var xd = new DOMParser().parseFromString(xmlStr, "text/xml");
return xd;
}
else return null;
}
});
})(jQuery);
相關文章
- mysql大小寫問題解決MySql
- MySQL大小寫問題MySql
- 解決Mac OS X檔案系統大小寫不敏感問題Mac
- mysql 大小寫敏感問題MySql
- 解決Linux系統下MYSQL資料表大小寫敏感問題LinuxMySql
- SAXParseException An invalid XML character 問題的解決ExceptionXML
- 解決XML下無效字元的問題XML字元
- Mysql 表名大小寫問題MySql
- PHP大小寫是否敏感問題PHP
- Jquery DataTables解決 Cannot reinitialise DataTable 問題jQuery
- maven的pom.xml用解決版本問題MavenXML
- 用jquery解決瀏覽器相容問題jQuery瀏覽器
- mysql 5.X 在linux上,表名大小寫敏感問題解決辦法MySqlLinux
- jquery-weui微信支付報錯問題解決jQueryUI
- 關於JQuery操作checkbox問題jQuery
- 解決「問題」,不要解決問題
- banq兄,各位高手java對檔案讀寫操作,檔案大小限制問題。Java
- Git解決pull操作不成功問題Git
- 解決properties、xml等配置檔案無法找到問題XML
- jquery的get()函式快取問題解決方案jQuery函式快取
- jQuery ajax請求返回401問題解決方案jQuery
- 如解決jquery與原生js衝突的問題jQueryJS
- 資料庫使用者大小寫問題資料庫
- vue 元件(component)命名的小細節問題(大小寫問題)Vue元件
- 【譯】解決問題比寫程式碼更重要
- 解決JSP讀寫MYSQL亂碼問題JSMySql
- Uncaught Error: Bootstrap‘s JavaScript requires jQuery報錯問題解決ErrorbootJavaScriptUIjQuery
- 一個寫xml的問題,高手幫忙啊!XML
- mysql表名忽略大小寫問題記錄MySql
- PHP操作xml詳解PHPXML
- ie中jQuery無法解析xml檔案的解決方案jQueryXML
- 解決問題
- jQuery.noConflict() 方法—— jquery庫與其他庫衝突的問題解決jQuery
- JQuery中ajax的使用與快取問題的解決方法jQuery快取
- 解決echsop相容jquery(transport.js的衝突)的問題jQueryJS
- jQuery.getJSON的快取問題的解決辦法jQueryJSON快取
- 發現問題,解決問題
- 關於xml編碼問題在VB,PHP,JAVA下的解決方案XMLPHPJava