成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳解關于JQuery Mobile使用心得

移動開發
Jquery Mobile使用心得是本文要介紹的內容,主要是來了解Jquery Mobile使用指南的一個指引,具體內容來看本文詳解。

Jquery Mobile使用心得是本文要介紹的內容,主要是來了解Jquery Mobile使用指南的一個指引,具體內容來看本文詳解。在Jquery Mobile的使用過程中,動態添加元素后css丟失。因為頁面標簽首先經過jquery mobile-10a2minjs的處理,添加了許多標簽,然后再用css布局,并且給出了一種解決方法:動態加載jquery mobile-10a2minjs。

但是經過測試,上面這種方法并不好。首先異步加載造成用戶可以看到沒有加載JS的頁面,并且JS加載過一次后,如果再要動態添加新元素的話,就意味著多次加載JS文件,顯示問題先不說,這效率也堪憂。

因此必須提出新方法。

新方法有兩個,調用JS的順序與普通方式相同,都別動態添加JS。

一是將按照jquery mobile-10a2minjs處理過后的樣式,來動態添加元素。jquery mobile-10a2minjs處理過后的樣式可以通過chrome瀏覽器的審查元素功能看到。這個辦法的缺點很明顯:添加了很多奇怪的標簽。

例如:

一般情形下動態添加元素:

  1. onelist = "<li><img src='stylesheets/images/file_icon/" + SwitchIcon($obj[i]wext) + "' class='ui-li-icon'/><a href='#' ";  
  2. if($obj[i]wtype == "dir"){//文件夾  
  3. onelist += "onclick=\"GetShowMyList(\'" + $obj[i]wid + "\')\">" + $obj[i]wname +"</a>
  4. <span class='ui-li-count'>" + CountSize($obj[i]wsize) + "</span><a href='dialog/operatefilehtml' >操作</a></li>"; 

}else{//非文件夾直接下載

  1. onelist += "onclick=\"download(\'" + $obj[i]wid + "\')\">" + $obj[i]wname +"</a><span class='ui-li-count'>" + CountSize($obj[i]wsize) + "  
  2. </span> 
  3. <a href='dialog/operatefilehtml' > 
  4. 操作</a></li>";

按照jquery mobile-10a2minjs處理過后的樣式,來動態添加元素:

  1. onelist = "<li class='ui-li-has-icon ui-btn ui-btn-icon-right ui-li ui-li-has-alt ui-btn-up-c' role='option' tabindex='0' data-theme='c'>" +  
  2.  "<div class='ui-btn-inner'>" +  
  3.  "<div class='ui-btn-text'>" +  
  4.  "<img class='ui-li-icon ui-li-thumb' src='stylesheets/images/file_icon/" + SwitchIcon($obj[i]wext) + "' />" +  
  5.  "<a class='ui-link-inherit' href='#' ";  
  6. if($obj[i]wtype == "dir"){//文件夾  
  7. onelist += "onclick=\"GetShowMyList(\'" + $obj[i]wid + "\')\">" + $obj[i]wname +"</a>" +  
  8.   "<span class='ui-li-count ui-btn-up-c ui-btn-corner-all'>" + CountSize($obj[i]wsize) + "</span>" +  
  9.   "<a class='ui-li-link-alt ui-btn ui-btn-up-c' href='dialog/operatefilehtml' title='操作' data-theme='c'>" +  
  10.   "<span class='ui-btn-inner'>" +  
  11.     "<span class='ui-btn-text'></span>" +  
  12.     "<span class='ui-btn ui-btn-up-d ui-btn-icon-notext ui-btn-corner-all ui-shadow' data-theme='d'>" +  
  13.       "<span class='ui-btn-inner ui-btn-corner-all'>" +  
  14.         "<span class='ui-icon ui-icon-gear ui-icon-shadow'></span>" +  
  15.       "</span>" +  
  16.     "</span>" +  
  17.   "</span>" +  
  18.   "</a></div></div></li>";  
  19. }else{//非文件夾直接下載  
  20. onelist += "onclick=\"download(\'" + $obj[i]wid + "\')\">" + $obj[i]wname +"</a>" +  
  21.   "<span class='ui-li-count ui-btn-up-c ui-btn-corner-all'>" + CountSize($obj[i]wsize) + "</span>" +  
  22.   "<a class='ui-li-link-alt ui-btn ui-btn-up-c' href='dialog/operatefilehtml' title='操作' data-theme='c'>" +  
  23.   "<span class='ui-btn-inner'>" +  
  24.     "<span class='ui-btn-text'></span>" +  
  25.     "<span class='ui-btn ui-btn-up-d ui-btn-icon-notext ui-btn-corner-all ui-shadow' data-theme='d'>" +  
  26.       "<span class='ui-btn-inner ui-btn-corner-all'>" +  
  27.         "<span class='ui-icon ui-icon-gear ui-icon-shadow'></span>" +  
  28.       "</span>" +  
  29.     "</span>" +  
  30.   "</span>" +  
  31.   "</a></div></div></li>";  
  32. }  

瞧這多了多少代碼??!不過這也是JQuery Mobile UI前端實際最終處理的代碼量。

方法二:refresh

其實JQuery Mobile 中早就封裝了refresh方法。你只需要對新添加的元素節點refresh一下就可以了。

例如: $("#節點名")listview("refresh");

還是剛才那個函數,采用普通的動態添加元素方法,最后加個refresh就搞定了。

  1. function ShowMyListOK(){//處理根目錄文件列表函數  
  2. if( $glb_result == ""){  
  3. alert("返回為空!請重新登錄!");  
  4. }else{  
  5. //alert("成功: "+$glb_result);  
  6. $("#wlist")empty();  
  7. var $obj = jQueryparseJSON($glb_result);  
  8. var onelist = "";  
  9. $each( $obj, function(i, n){  
  10. if( $obj[i]wname != ""){  
  11.    onelist = "<li><img src='stylesheets/images/file_icon/" + SwitchIcon($obj[i]wext) + "' class='ui-li-icon'/><a href='#' ";  
  12. if($obj[i]wtype == "dir"){//文件夾  
  13. onelist += "onclick=\"GetShowMyList(\'" + $obj[i]wid + "\')\">" + $obj[i]wname +"</a>
  14. <span class='ui-li-count'>" + CountSize($obj[i]wsize) + "</span><a href='dialog/operatefilehtml' >操作</a></li>";  
  15. }else{//非文件夾直接下載  
  16. onelist += "onclick=\"download(\'" + $obj[i]wid + "\')\">" + $obj[i]wname +"</a>
  17. <span class='ui-li-count'>" + CountSize($obj[i]wsize) + "</span><a href='dialog/operatefilehtml' >操作</a></li>";  
  18. }  
  19. $("#wlist")append(onelist);  
  20. }  
  21. });  
  22. $("#wlist")listview("refresh");  
  23. }  

這個方法很好,但是為什么沒有早點發現呢?因為jquery mobile-10a2js的源碼確實很不好讀。本人JS水平有限,看到里面內容后,以為調用里面方法必須創建對象,誤解了JQuery的原意。試了半天才搞出來,必須發帖紀錄一下這個小成功。

小結:詳解關于JQuery Mobile使用心得的內容介紹完了,希望通過本文的學習能對你有所幫助!

責任編輯:zhaolei 來源: 互聯網
相關推薦

2009-06-26 16:12:08

ThickboxjQuery

2011-01-19 14:57:09

Thunderbird

2009-06-19 11:09:27

Spring AOP

2011-01-07 11:14:17

Nginx負載均衡負載均衡

2010-02-01 10:15:07

C++ TinyXML

2011-09-01 15:00:48

jQuery MobiDemo

2011-09-01 14:14:00

jQuery Mobi

2010-03-02 17:33:49

Android 2.0

2009-08-28 10:08:15

C# using語句

2011-07-21 14:57:34

jQuery Mobi

2025-03-26 00:00:00

2009-08-31 10:00:07

C#靜態變量

2009-08-11 11:42:50

Ruby使用心得

2011-09-01 14:55:41

jQuery Mobi列表視圖

2011-09-08 10:18:09

Windows MobWidgets

2011-03-15 11:05:03

2011-04-20 13:59:28

愛普生V100掃描儀

2010-06-01 13:42:37

TortoiseSVN

2010-08-06 11:12:38

FlexCairngorm框架

2009-08-26 13:31:21

JavaScript使
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91资源在线 | 狠狠亚洲 | 日韩人体在线 | 日韩午夜 | 一本一道久久a久久精品蜜桃 | 国产a视频 | 欧洲亚洲视频 | 国产二区视频 | 日本成人在线免费视频 | 自拍偷拍亚洲欧美 | 国产激情视频网站 | 国产91精品网站 | av中文字幕在线播放 | 在线三级网址 | 欧美精品久久久久久 | 成人精品视频 | 草久免费视频 | 黄色av大片| 欧美激情精品久久久久 | 精精国产视频 | 91se在线| 91在线视频播放 | 欧美精品一区三区 | 香蕉大人久久国产成人av | 免费国产黄| 91操操操 | 国产精品毛片一区二区三区 | 成人污污视频 | 国产色婷婷精品综合在线手机播放 | 午夜在线| 午夜在线小视频 | 中文天堂网 | 激情五月婷婷丁香 | 日韩中出 | 国产一级在线 | 在线观看免费观看在线91 | 九九免费视频 | 国产高清视频 | 久久aⅴ乱码一区二区三区 亚洲国产成人精品久久久国产成人一区 | 午夜精品一区 | 久久久久久久久久久高潮一区二区 |