jquery 新手學習常見問題解決方法
更新時間:2010年04月18日 01:33:26 作者:
jquery 新手入門參考教程。
Q0,新手必看教程:
第一步,jQuery中文入門指南,翻譯加實例,jQuery的起點教程
第二步,下載手冊方便查詢(jQuery 1.41 中文API文檔 chm版)
第三步,深刻了解jQuery對象和普通DOM對象的區(qū)別?;ハ噢D(zhuǎn)化見Q1
Q1,js的寫法:document.getElementById('save').disabled=true;
在jquery中我是這樣寫的$("#save").disabled = true; 為什么沒效果呢
A,這個是典型的問題,其實因為$("#save")出來的其實是jQuery對象,而不是普通DOM對象
這是新手常見的問題。
解決方法有2:
1,用JQ寫法,$("#save").attr("disabled","true");
2,轉(zhuǎn)成DOM寫法$("#save")[0].disabled=true;
當然,$("#save")[0]也可以寫成$("#save").get(0)。他返回的也是DOM元素
$("#save").eq(0)得到的還是jq對象
$(dom對象)就能得到一個jq對象。
Q2,獲取選中的checkbox
A:
獲取所有選中的checkbox:
$("input:checkbox:checked")
判斷是否一組checkbox都選中了:
if($("input:checkbox:checked").length){}
判斷某一個checkbox是否被選中
if($("input:checkbox").is(":checked")){}
Q3,我的id里有[]或.之類的符號,怎么辦?或者帶有命名空間的xml標簽帶有:怎么辦?
A:用\\來轉(zhuǎn)義如<div id="id[1]"></div>
$("#id\\[1\\]")
Q4,在框架頁中,如何操作父窗口的對象
A,引用UPC的方法
沒找到很好的方法
只好用DOM方法與jquery方法結(jié)合的方式實現(xiàn)了
1.在父窗口中操作 選中IFRAME中的所有單選鈕
$(window.frames["iframe1"].document).find("input[type='radio']").attr("checked","true");
2.在IFRAME中操作 選中父窗口中的所有單選鈕
$(window.parent.document).find("input[type='radio']").attr("checked","true");
iframe框架的:<iframe src="test.html" id="iframe1" width="700" height="300" frameborder="0" scrolling="auto"></iframe>
IE7中測試通過 回去你自己試試吧
實現(xiàn)的原理其實很簡單 就是用到了$(DOM對象)可以轉(zhuǎn)換成jquery對象
==================================================
不過我的方法是
window.parent.jQuery("input[name=validate]").val("<%=Session("GetCode")%>");
這段是來自我博客的自動填寫驗證碼的,有興趣可分析下我的FOOTER里的那個框架。
其實本質(zhì)上和UPC的方法是一樣的。大家可以借鑒參考
Q5,解析由AJAX加載的XML,和相關(guān)亂碼問題
A:見之前的帖子:hhttp://bbs.jquery.org.cn/read.php?tid-1673.html
Q6,我下了一個插件Interface,怎么在最新的jQuery里一點都不好用?
A: Interface已經(jīng)被完全重寫并且改名為jQuery UI,可以在這里找到最新版本:
http://ui.jquery.com/
Q7,在IE下動畫會閃一下,效果不理想
A,加上DTD定義即可
比如<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Q8,為什么官方的說
Download jQuery 1.2.3 (15kb, Minified and Gzipped),但我下在下來卻有
jquery-1.2.3.min.js 52.8 KB
A,顯然,他是用了Gzip了(一種服務器端壓縮技術(shù),自己GOOGLE)。而不是官網(wǎng)寫錯了沒更新或者是騙人的~
Q9,pack,min和原版三個版本什么區(qū)別呢?
pack是如果服務器沒開啟gzip的時候用
min是服務器有開gzip的時候用
原版可以用于平時開發(fā)的時候,或者自己分析源碼用。
Q10,jQuery用的是什么壓縮軟件?
A: Dean Edwards 寫的Packer ,現(xiàn)在已經(jīng)改用TBCompressor(YUI Compressor) 壓縮了。推薦下載一份。
Q11,$('a[@href^="mailto"]') 這個代碼在jQuery 1.3里不能用,1.2里可以,為什么?
A: jQuery 1.3以后已經(jīng)不需要再使用那個@符號了,只需要簡單的去掉那個@符號就可以正常運作了。
Q12,jQuery能跨域么?
A: jQuery本身就是對于JS的封裝,瀏覽器對JS有權(quán)限設(shè)置,JS做不到的,jQuery也無法做到。但是可以通過 jsonp 的方式跨域。
第一步,jQuery中文入門指南,翻譯加實例,jQuery的起點教程
第二步,下載手冊方便查詢(jQuery 1.41 中文API文檔 chm版)
第三步,深刻了解jQuery對象和普通DOM對象的區(qū)別?;ハ噢D(zhuǎn)化見Q1
Q1,js的寫法:document.getElementById('save').disabled=true;
在jquery中我是這樣寫的$("#save").disabled = true; 為什么沒效果呢
A,這個是典型的問題,其實因為$("#save")出來的其實是jQuery對象,而不是普通DOM對象
這是新手常見的問題。
解決方法有2:
1,用JQ寫法,$("#save").attr("disabled","true");
2,轉(zhuǎn)成DOM寫法$("#save")[0].disabled=true;
當然,$("#save")[0]也可以寫成$("#save").get(0)。他返回的也是DOM元素
$("#save").eq(0)得到的還是jq對象
$(dom對象)就能得到一個jq對象。
Q2,獲取選中的checkbox
A:
獲取所有選中的checkbox:
$("input:checkbox:checked")
判斷是否一組checkbox都選中了:
if($("input:checkbox:checked").length){}
判斷某一個checkbox是否被選中
if($("input:checkbox").is(":checked")){}
Q3,我的id里有[]或.之類的符號,怎么辦?或者帶有命名空間的xml標簽帶有:怎么辦?
A:用\\來轉(zhuǎn)義如<div id="id[1]"></div>
$("#id\\[1\\]")
Q4,在框架頁中,如何操作父窗口的對象
A,引用UPC的方法
沒找到很好的方法
只好用DOM方法與jquery方法結(jié)合的方式實現(xiàn)了
1.在父窗口中操作 選中IFRAME中的所有單選鈕
$(window.frames["iframe1"].document).find("input[type='radio']").attr("checked","true");
2.在IFRAME中操作 選中父窗口中的所有單選鈕
$(window.parent.document).find("input[type='radio']").attr("checked","true");
iframe框架的:<iframe src="test.html" id="iframe1" width="700" height="300" frameborder="0" scrolling="auto"></iframe>
IE7中測試通過 回去你自己試試吧
實現(xiàn)的原理其實很簡單 就是用到了$(DOM對象)可以轉(zhuǎn)換成jquery對象
==================================================
不過我的方法是
window.parent.jQuery("input[name=validate]").val("<%=Session("GetCode")%>");
這段是來自我博客的自動填寫驗證碼的,有興趣可分析下我的FOOTER里的那個框架。
其實本質(zhì)上和UPC的方法是一樣的。大家可以借鑒參考
Q5,解析由AJAX加載的XML,和相關(guān)亂碼問題
A:見之前的帖子:hhttp://bbs.jquery.org.cn/read.php?tid-1673.html
Q6,我下了一個插件Interface,怎么在最新的jQuery里一點都不好用?
A: Interface已經(jīng)被完全重寫并且改名為jQuery UI,可以在這里找到最新版本:
http://ui.jquery.com/
Q7,在IE下動畫會閃一下,效果不理想
A,加上DTD定義即可
比如<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Q8,為什么官方的說
Download jQuery 1.2.3 (15kb, Minified and Gzipped),但我下在下來卻有
jquery-1.2.3.min.js 52.8 KB
A,顯然,他是用了Gzip了(一種服務器端壓縮技術(shù),自己GOOGLE)。而不是官網(wǎng)寫錯了沒更新或者是騙人的~
Q9,pack,min和原版三個版本什么區(qū)別呢?
pack是如果服務器沒開啟gzip的時候用
min是服務器有開gzip的時候用
原版可以用于平時開發(fā)的時候,或者自己分析源碼用。
Q10,jQuery用的是什么壓縮軟件?
A: Dean Edwards 寫的Packer ,現(xiàn)在已經(jīng)改用TBCompressor(YUI Compressor) 壓縮了。推薦下載一份。
Q11,$('a[@href^="mailto"]') 這個代碼在jQuery 1.3里不能用,1.2里可以,為什么?
A: jQuery 1.3以后已經(jīng)不需要再使用那個@符號了,只需要簡單的去掉那個@符號就可以正常運作了。
Q12,jQuery能跨域么?
A: jQuery本身就是對于JS的封裝,瀏覽器對JS有權(quán)限設(shè)置,JS做不到的,jQuery也無法做到。但是可以通過 jsonp 的方式跨域。
相關(guān)文章
jquery 查找select ,并觸發(fā)事件的實現(xiàn)代碼
項目中,用jquery 查找select ,并觸發(fā)事件. 記一筆.關(guān)鍵代碼,需要的朋友可以參考下。2011-03-03jquery觸發(fā)a標簽跳轉(zhuǎn)事件示例代碼
本文為大家詳細介紹下如何使用jquery觸發(fā)a標簽的跳轉(zhuǎn)事件,感興趣的朋友可以參考下哈,希望對大家有所幫助2013-07-07基于jQuery的JavaScript模版引擎JsRender使用指南
這篇文章主要介紹了基于jQuery的JavaScript模版引擎JsRender使用指南,需要的朋友可以參考下2014-12-12jQuery獲取所有父級元素及同級元素及子元素的方法(推薦)
這篇文章主要介紹了jQuery獲取所有父級元素及同級元素及子元素的方法,本文給大家介紹的非常詳細,具有參考借鑒價值 ,需要的朋友可以參考下2018-01-01