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

Javascript Widget入門學習解析

移動開發
Javascript Widget入門學習解析是本文丫介紹的內容,主要是來了解并學習Widget應用,具體內容的實現來看本文詳解。

Javascript Widget入門學習解析是本文丫介紹的內容,主要是來了解并學習Widget應用,具體內容的實現來看本文詳解。

收到Erica的來信,希望知道采麥的Widget是怎么做出來的,突然想起當年我第一次寫widget代碼的時候,也是滿世界找不到一個簡明實用的教程。于是做個總結,也許更多人可以用得到。

復習一下兩個js函數:

js可以動態生成網頁代碼,比如:

  1. document.write('<div id="photo">123</div>'); 

這段代碼可以讓網頁里顯示出一個叫photo的層,里面還有數字123。

此外,js可以動態改變網頁內容,比如這段代碼:

  1. document.getElementById('photo').innerHTML='abc'

就可以讓這個photo層里顯示abc,而不是原來的123了

別看這么一段小代碼,其實這就是整個widget的核心了

技術原理:

widget有3個重要部分組成:數據、外殼、腳本。

數據:就是你希望顯示出來的內容,比如你要顯示flickr上最近的照片,那么照片就是數據;

外殼:就是容納數據的容器,比如上述照片,你把他們包裹到一個叫photo的div里,那么這個div就是外殼。

腳本:腳本的作用是生成外殼,并把數據填充到外殼里,主要就是js代碼,當然也可以帶一些css

所以,理論上,一個原始的widget代碼應該是這樣的:

  1. <script type="text/javascript">//調用js腳本  
  2. document.write('<div id="photo"></div>'); //js腳本生成外殼photo  
  3. document.getElementById('photo').innerHTML='abc'; //js腳本把數據abc填充到外殼photo  
  4. </script> 

是不是很簡單?是很簡單,可惜太長了,于是把上面四行代碼的中間兩行提取出來,復制放到一個wjs.js文件里:

  1. document.write('<div id="photo"></div>'); //js腳本生成外殼photo  
  2. document.getElementById('photo').innerHTML='abc'; //js腳本把數據abc填充到外殼photo 

這樣只需要調用一下就可以使用widget了:

  1. <script type="text/javascript" src="wjs.js"></script> 

好了,到這里你已經學會了最簡單的widget制作,快去實驗一下吧。

基礎進階:

那么,如果數據不是abc怎么辦呢? 很簡單,把數據獨立出來就可以了。我們改造一下wjs.js代碼:

  1. document.write('<div id="photo"></div>');   //利用js建立photo層,生成外殼  
  2. document.write('<script type="text/javascript" src="widget.js"></script>'); //js填充數據 

數據就在widget.js里,我們分析一下其代碼,只有一句:

  1. document.getElementById('photo').innerHTML='xxx'

這樣的話,要改變數據,只需要把widget.js里的xxx換成任何內容即可,而無需改動wjs.js

中級進階:

如果要自動動態改變數據xxx,只需要把widget.js也做成動態的,以php為例,首先把wjs.js修改一下:

  1. document.write('<div id="photo"></div>');   //利用js建立photo層,生成外殼  
  2. document.write('<script type="text/javascript" src="widget.php?user=howard></script>'); //js填充數據 

注意里面的widget.js換成了widget.php,后面還跟了一串變量,這樣就可以顯示為howard量身定制的數據了,看看widget.php的代碼:

  1. <?php 
  2. Header( "Content-type: text/javascript"); //聲明文件類型為js  
  3. $user=$_GET['user']; //讀取user變量 (howard)  
  4. echo "document.getElementById('photo').innerHTML='hi, my name is $user'; ";  
  5. //輸出動態內容(hi, my name is howard)  
  6. ?> 

到這里,我們已經可以根據不同變量來自動顯示不同的數據了。后面就很簡單了,把widget.php任意改造,讀取數據庫,可以輸出各種各樣關于howard的數據。

實戰應用:

事實上,實際應用中,wjs.js也被改造成了動態文件,比如wsj.php,這樣你的用戶howard只需要在其blog里插入以下代碼,就可以真正實現個性數據調用:

  1. <script type="text/javascript" src="http://domain.com/wjs.php?user=howard"> </script> 

wjs.php的內部代碼是這樣的:

  1. <?php 
  2. Header( "Content-type: text/javascript"); //聲明文件類型為js  
  3. $user=$_GET['user']; //讀取user變量 (howard)  
  4. echo "document.write('<div id="photo"></div>');"   //利用js建立photo層,生成外殼  
  5. echo "document.write('<script type=/"text/javascript/" src=/"widget.php?user=$user/”></script>); "; //動態調用widget.php  
  6. ?> 

這樣,widget.php收到了user變量之后,就能顯示出howard的個性數據。

先寫到這,大家可以先回去測試一下。真正能用的widget,代碼和上面有很大區別,但是原理是相同的。

小結:Javascript Widget入門學習解析的內容介紹完了,希望通過Widget應用內容的學習能對你有所幫助!

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

2011-09-08 14:50:51

JavascriptWidget

2011-09-07 14:25:53

Android Wid設計

2011-09-08 15:40:45

Android Wid組件

2011-09-08 16:07:13

Widget配置文件

2011-05-03 15:13:23

BlackBerryWidget

2011-09-08 11:43:32

GTK Widget

2011-09-09 17:59:26

QT Widget

2011-09-07 17:54:40

Android Wid開發

2011-09-09 13:23:17

Widget

2011-09-07 14:01:41

Android Wid實例

2011-09-08 14:21:37

jQueryWidget

2011-09-09 10:00:20

Android Wid開發

2011-09-08 16:17:45

Widget

2011-09-09 11:05:56

Widget

2010-06-13 09:45:35

Widget開發

2011-09-06 16:16:48

jQuery Mobi

2011-09-07 14:39:47

Android Wid設計

2010-04-23 11:21:05

Widget開發

2011-09-07 13:30:48

Android WidTabWidget

2011-09-09 19:39:57

GTK Widget
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人午夜视频在线观看 | 久久99精品久久久 | 欧美性成人 | 久久亚洲一区二区 | 亚洲一二三在线 | 国产一区二区精品在线 | 久久久久无码国产精品一区 | 精品一区二区久久久久久久网站 | www.日日操 | 日韩欧美一区二区三区免费观看 | 国产精品福利网 | 三级黄色片在线观看 | 精品乱子伦一区二区三区 | 国产精品一区二区三区在线 | 凹凸日日摸日日碰夜夜 | 一级毛片在线播放 | 成人久久久 | 日韩视频免费 | 精品免费国产视频 | 2021狠狠干 | 我想看国产一级毛片 | 天天综合永久 | 日韩精品成人一区二区三区视频 | 成人在线观看黄 | 嫩草一区二区三区 | 亚洲一区二区三区视频在线 | 日韩成人在线看 | 日韩成人中文字幕 | 国产精品视频 | 欧美精品福利 | 亚洲一区二区三区四区在线观看 | 国产精品一区二区在线播放 | 亚洲精品不卡 | www.青青草 | 欧美成人在线网站 | 久久久久久久电影 | 国产成人免费视频网站高清观看视频 | 国产农村妇女毛片精品久久麻豆 | 亚洲一区精品在线 | 午夜国产一级 | 亚洲最大成人综合 |