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
- 解決Linux系統下MYSQL資料表大小寫敏感問題LinuxMySql
- Jquery DataTables解決 Cannot reinitialise DataTable 問題jQuery
- 關於JQuery操作checkbox問題jQuery
- Mysql 表名大小寫問題MySql
- maven的pom.xml用解決版本問題MavenXML
- jQuery.noConflict() 方法—— jquery庫與其他庫衝突的問題解決jQuery
- jquery-weui微信支付報錯問題解決jQueryUI
- 解決properties、xml等配置檔案無法找到問題XML
- Git解決pull操作不成功問題Git
- vue 元件(component)命名的小細節問題(大小寫問題)Vue元件
- ie中jQuery無法解析xml檔案的解決方案jQueryXML
- Uncaught Error: Bootstrap‘s JavaScript requires jQuery報錯問題解決ErrorbootJavaScriptUIjQuery
- PHP操作xml詳解PHPXML
- SpringBoot專案maven pom.xml警告Overriding managed version問題解決Spring BootMavenXML
- JQuery中ajax的使用與快取問題的解決方法jQuery快取
- 【譯】解決問題比寫程式碼更重要
- [20190306]靜態監聽配置sid大小寫問題.txt
- 解決canvas合成圖片大小錯誤、模糊以及跨域的問題Canvas跨域
- 解決 jquery使用ajax請求發生跨域問題的辦法jQuery跨域
- ARM彙編解決階乘以及大小寫轉換
- MySQL的where條件字串區分大小寫的問題MySql字串
- Qt5.15新建類報錯是大小寫問題嗎?QT
- git Windows下重新命名檔案,大小寫敏感問題GitWindows
- Shiro效能優化:解決Session頻繁讀寫問題優化Session
- Mysql(MyISAM)的讀寫互斥鎖問題的解決方法MySql
- IDEA解決java註釋頂格、xml註釋右對齊+無空格問題IdeaJavaXML
- “default”標籤跳過“ ”的初始化操作----問題解決
- SQL Server 解決不區分中英文大小寫方法SQLServer
- 【翻譯文】sync.RWMutex - 解決併發讀寫問題Mutex
- C++---寫時拷貝解決深淺拷貝問題C++
- 你解決的問題比你編寫的程式碼更重要!
- 提問題比解決問題更重要
- (xml中sql語句為紅)解決No data sources are configured to run this SQL and provide advanced的問題XMLSQLIDE
- 資料併發操作帶的的問題及解決辦法
- Mybatis入門 Mybatis存在的意義 解決的問題 基本操作MyBatis
- 解決跨域問題跨域
- SERVICE問題解決方法
- 解決 Unexpectedlexicaldeclarationincaseblock的問題BloC