DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery特效代碼 >> 前端開發部分總結[兼容性、DOM操作、跨域等](持續更新)
前端開發部分總結[兼容性、DOM操作、跨域等](持續更新)
編輯:JQuery特效代碼     
項目背景:.Net 3.5+MySQL+jQuery+WebService
在公司做這個項目已經6個多月了,總結一些問題,也算是拋磚引玉吧,希望園子裡更多的朋友一起分享一些技巧。
1、 WebService方法返回值不能為void。
當WebService方法返回值為void時,FF和Chrome會持續等待,認為這個請求沒有結束,而在IE中一切是正常的。
2、當input的type="button"時或者使用button時,點擊後會觸發form的submit。
當時查找頁面刷新的問題找了很久,最後才發現是button會自動觸發form的submit,導致當前頁面的刷新。
3、js設置document.domain只能從二級域名設置到頂級域名。
比如訪問moozi.cnblogs.com,可以在這個頁面中寫document.domain='cnblogs.com';如果把域設置為cnblogs.com之後,無法再使用document.domain='moozi.cnblogs.com';。
4、使用DOM片段創建iframe,當跨域時,不能用js寫iframe的域。
比如你在moozi.cnblogs.com/test.html頁面用js把域設置為document.domain='cnblogs.com',而此時你再用var ifrm=createElement('iframe') ,這時將不能用js設置iframe的域也為'cnblogs.com',只能讓ifrm.src='test2.htm',並在test2.htm中設置域document.domain='cnblogs.com'。
5、當你修改過當前域的時候,CKEditor是正常的,而tinyMCE需要重新設置域。
CKEditor能自動識別當前域,並不出錯。tinyMCE需要人為的設置。同時,如果你是用CKFinder上傳文件,而需要修改它的輸入代碼,不然會因為域不同而出現沒有權限的錯誤提示。
6、使用tinyMCE,盡管你的初始化代碼只有一句,但是可能出現多次初如化。發生原因未知,在不確定的情況下會出現此BUG。
7、開發js組件的時候,要時刻注意閉包和this的指代,這方面之前吃了不少虧。
8、將字符串轉換成jQuery對象時,要注意字符串html代碼的閉合標簽。
比如:var html='<span>test</span> 'var jqEl=$(html);此時,jqEl會把html裡的' '丟掉。
9、jQuery1.2.6和jQuery1.3在細節的處理上有一些區別。
jQuery1.2.6處理hasClass('.className')會出錯,而jQuery1.3不會。
10、盡量少用jQuery的each,多用js原生的代碼,性能較高。
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved