svnno****@sourc*****
svnno****@sourc*****
2011年 2月 12日 (土) 23:40:45 JST
Revision: 2388 http://sourceforge.jp/projects/sie/svn/view?view=rev&revision=2388 Author: dhrname Date: 2011-02-12 23:40:45 +0900 (Sat, 12 Feb 2011) Log Message: ----------- EventモジュールとCoreモジュールで重複するメソッドを削除して、転送量を減らした Modified Paths: -------------- branches/07x/sie.js Modified: branches/07x/sie.js =================================================================== --- branches/07x/sie.js 2011-02-12 14:33:48 UTC (rev 2387) +++ branches/07x/sie.js 2011-02-12 14:40:45 UTC (rev 2388) @@ -238,48 +238,6 @@ prefix : null, ownerDocument : null, parentNode : null, -/*insertBeforeメソッド - *指定したrefノードの前に、新たなnノードを入れる。貼り付け(ペースト)機能。 - */ -/*Node*/ insertBefore : function( /*Node*/ n, ref) { - var tp = this.parentNode; - if (tp) { - while (!tp) { //先祖をたどっていく - if (tp === n) { //先祖要素が追加ノードならばエラー - throw (new DOMException(DOMException.HIERARCHY_REQUEST_ERR)); - } - tp = tp.parentNode; - } - } - if (this.ownerDocument !== n.ownerDocument) { //所属Documentの生成元が違うならば - throw (new DOMException(DOMException.WRONG_DOCUMENT_ERR)); - } - if (n.parentNode === this) { //入力した要素が子要素ならば - this.removeChild(n); - } - if (!ref) { //参照要素がNULLの場合、要素を追加する(appendChildと同じ効果) - this.childNodes[this.childNodes.length] = n; - if (this.lastChild) { - n.previousSibling = this.lastChild; - this.lastChild.nextSibling = n; - } - } else { - if (ref.parentNode !== this) { //参照ノードが子要素でない場合 - throw (new DOMException(DOMException.NOT_FOUND_ERR)); - } - this.childNodes.splice(ref._num,1,n,ref); //Arrayのspliceを利用して、リストにnノードを追加 - var rp = ref.previousSibling; - if (rp) { - rp.nextSibling = n; - } - ref.previousSibling = n; - } - n.nextSibling = ref; - this.firstChild = this.childNodes[0]; - this.lastChild = this.childNodes[this.childNodes.length-1]; - n.parentNode = this; - return n; -}, /*replaceChildメソッド *指定したoldChildノードの代わりに、新たなnewChildノードを入れる。切り替え機能。 */ @@ -288,23 +246,6 @@ var s = this.removeChild(oldChild); return s; }, -/*removeChildメソッド - *eleノードをリストから取り除く。eleノードそのものは削除されない。切り取り(カット)機能。 - */ -/*Node*/ removeChild : function( /*Node*/ ele) { - if (!(ele instanceof Node)) { //Nodeでなければ - throw (new Error()); - } - if (ele.parentNode === this) { - this.childNodes.splice(ele._num,1); //Arrayのspliceを利用して、リストからeleノードを排除 - } else { //親が違う場合 - throw (new DOMException(DOMException.NOT_FOUND_ERR)); - } - if (ele.ownerDocument !== this.ownerDocument) { //所属ドキュメントが違う場合 - throw (new Error()); - } - return ele; -}, /*appendChildメソッド *eleノードをリストの最後尾に追加する */ @@ -484,25 +425,6 @@ var s = this.data.substr(offset, count); return s; }; -/*void*/ CharacterData.prototype.appendData = function( /*string*/ arg) { - this.data += arg; - this.length = this.data.length; -}; -/*void*/ CharacterData.prototype.insertData = function( /*long*/ offset, /*string*/ arg) { - var pre = this.substring(0, offset - 1); //文字列を二つに分けた、前半部分 - var next = this.substring(offset, this.length - offset); //後半部分 - this.data = pre + this.data + next; - this.length = this.data.length; -}; -/*void*/ CharacterData.prototype.deleteData = function( /*long*/ offset, /*long*/ count) { - var pre = this.substring(0, offset - 1); //残すべき前半部分 - var next = this.substring(offset + count, this.length - 1); //後半部分 - if (offset + count > this.length) { //offsetとcountの和が文字全体の長さを超える場合、offsetから最後までのを削除 - next = ""; - } - this.data = pre + next; - this.length = this.data.length; -}; /*void*/ CharacterData.prototype.replaceData = function( /*long*/ offset, /*long*/ count, /*string*/ arg) { if (offset < 0 || count < 0 || offset > this.length) { //値が負か、データの長さよりoffsetが長いとき、サイズエラーを起こす throw (new DOMException(INDEX_SIZE_ERR)); @@ -579,17 +501,6 @@ var s = this.attributes.getNamedItemNS(namespaceURI,localName); return s; }; -/*Attr*/ Element.prototype.setAttributeNodeNS = function( /*Attr*/ newAttr){ - if (newAttr.ownerDocument !== this.ownerDocument) { //所属ドキュメントが違う場合 - throw (new DOMException(DOMException.WRONG_DOCUMENT_ERR)); - } - var s = this.attributes.setNamedItemNS(newAttr); - newAttr.ownerElement = this; - if (newAttr.localName === "id") { //id属性であったならば - this.ownerDocument._id[newAttr.nodeValue] = this; //ドキュメントに登録しておく - } - return s; -}; /*NodeList(Array)*/ Element.prototype.getElementsByTagNameNS = function( /*string*/ namespaceURI, /*string*/ localName) { var s = [], n = 0; var tno = this.childNodes;