<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 4,  comments - 13,  trackbacks - 0

    prototype.js是一個很強大的Javascript函數庫,它可以讓你很輕松的使用一些特效,實現AJAX的功能.雖然prototype.js是為了Ruby On Rails開發的,它的純Javascript的性質也使得它很容易用在其他的網絡程序中.可惜的是,Prototype.js還沒有強大的文檔解釋,盡管它的代碼非常有條理,但是也給初學者造成了一定的麻煩.作者在README里說:

    Prototype is embarrassingly lacking in documentation. (The source code should be fairly easy to comprehend; I’m committed to using a clean style with meaningful identifiers. But I know that only goes so far.)

    基本用法:以Element Class為例,prototype給每個主要的分類都分成了一個Class,使用起來很方便,要產生特定的效果的話只要用new Class.function(<argument>)就可以了.比如:
    <DIV id="div1"><a href="#" onclick="new Element.toggle(''div2'')">Click Me</a></DIV>
    <DIV id="div2">Hello!</DIV>

    當點擊Click Me的時候,div2就會交替隱藏或顯示.注意,你可以給toggle加上無限個parameter,比如Element.toggle(''div2'',''div3'',''div4'')...

    下面是每個重要的類和函數的解釋:

    prototype 1.2.0 的函數簡介
    函數名 解釋 舉例
    Element.toggle 交替隱藏或顯示 "Element.toggle(''div1'',''div2'')
    Element.hide 隱藏 "Element.hide(''div1'',''div2'')
    Element.show 顯示 "Element.show(''div1'',''div2'')
    Element.remove 刪除 "Element.remove(''div1'',''div2'')
    Element.getHeight 取得高度 "Element.getHeight(''div1'')
    Toggle.display 和Element.toggle相同 "Toggle.display(''div1'',''div2'')
    Insertion.Before 在DIV前插入文字 "Insertion.Before(''div1'',''my content'')
    Insertion.After 在DIV后插入文字 "Insertion.After(''div1'',''my content'')
    Insertion.Top 在DIV里最前插入文字 "Insertion.Top(''div1'',''this is a text'')
    Insertion.Bottom 在DIV里最后插入文字 "Insertion.Bottom(''div1'',''this is a text'')
    PeriodicalExecuter 以給定頻率調用一段JavaScript "PeridicalExecutor(test, 1)"這里test是Javascript的函數,1是頻率(1秒).
    $ 取得一個DIV, 相當于getElementById() $(''div1'')
    Field.clear 清空一個輸入框 "Field.clear(''textfield1'')
    Field.focus 把 焦點集中在輸入框上 "Field.focus(''select1'')
    Field.present 判斷內容是否為空 "alert(Field.present(''textfield1''))"
    Field.select 選擇輸入框的內容 "Field.select(''textfield1'')"
    Field.activate 把 焦點集中在輸入框上并選擇輸入框的內容 "Field.activate(''textfield1'')"
    Form.serialize 把表格內容轉化成string
    Form.getElements 取得表格內容為數組形式
    Form.disable disable表格所有內容 Form.disable(''form1'') (這個好象不work)
    Form.focusFirstElement 把焦點集中在表格第一個元素上 Form.focusFirstElement(''form1'')
    Form.reset Reset表格 Form.reset(''form1'')
    Form.Element.getValue 取得表格輸入框的值 Form.Element.getValue(''text1'')
    Form.Element.serialize    把表格中輸入框內容轉化成string Form.Element.serialize(''text1'')
    $F 等同于Form.Element.getValue() $F(''text1'')
    Effect.Highlight 高亮特效. Effect.Highlight(''text1'')
    Effect.Fade 褪色特效
    Effect.Scale 放大縮小(百分比)

    Effect.Scale(''text1'', 200)
    這里200 = 200%, 即兩倍

    Effect.Squish 消失特效.文字縮小后消失 Effect.Squish(''text1'')
    Effect.Puff 消失特效.文字放大后消失 Effect.Puff(''text1'')
    Effect.Appear 出現特效
    Effect.ContentZoom ZOOM特效.
    Ajax.Request 傳送Ajax請求給服務器 Ajax.Request(''http://server/s.php'')
    Ajax.Updater 傳送Ajax請求給服務器并用答復的結果更新指定的Container Ajax.Updater(''text1'',''http://server/s.php'')

     

    Ajax的函數實際上還有一個可選參數,就是options.在未指明的情況下,Ajax使用的是''POST''發送請求,而且是異步執行,如果想要改用''GET''和同步,就可以用Ajax.Request(''http://server/s.php'',''get'','''',''a=1&b=2'')來執行.

    在Rails中Ajax的函數被封裝成Ruby的函數,所以不必直接采用Ajax.Request,Ajax.Updater.但是知道它是怎么工作的也很有用.

    posted on 2009-11-30 00:14 FOG 閱讀(2270) 評論(9)  編輯  收藏


    FeedBack:
    # re: prototype.js簡介
    2009-11-30 08:46 | hbdrawn
    有時間也研究下prototype.js  回復  更多評論
      
    # re: prototype.js簡介
    2009-11-30 09:13 | YangL
    太不面向對象了,有點像C的函數。個人還是喜歡jQuery  回復  更多評論
      
    # re: prototype.js簡介
    2009-11-30 14:19 | 咖啡兔
    過時了,現在都用jQuery了  回復  更多評論
      
    # re: prototype.js簡介
    2009-11-30 16:28 | 懶蟲
    聽一個很牛的人說:學好JAVA不一定能找到工作,但是學好Javascript一定能找到好工作。  回復  更多評論
      
    # re: prototype.js簡介
    2009-11-30 17:43 | FOG
    @咖啡兔
    中國有句古話:藝多不壓身!  回復  更多評論
      
    # re: prototype.js簡介
    2009-12-01 11:58 | mikey
    不要張口閉口面向對象,什么好用用什么,jQuery的許可商業使用是要付費的,有人考慮過么?再請問有誰用jQuery完整實現整個頁面功能?  回復  更多評論
      
    # re: prototype.js簡介[未登錄]
    2009-12-06 09:23 | Nicholas
    prototype.js出來得很早,那個時候ror還沒出來吧?呵呵  回復  更多評論
      
    # re: prototype.js簡介
    2010-11-02 17:56 | 路人甲
    # re: prototype.js簡介[未登錄]
    2012-09-20 09:54 | 匿名
    @mikey
    至少我們網站都是用Jquery實現的  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2012年9月>
    2627282930311
    2345678
    9101112131415
    16171819202122
    23242526272829
    30123456

    常用鏈接

    留言簿

    隨筆檔案

    MY LINK

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲区视频在线观看| 久久亚洲AV成人无码电影| 国内成人精品亚洲日本语音| 无码人妻一区二区三区免费手机 | 日韩精品免费一区二区三区| 亚洲av无码片在线观看| 在线观看免费人成视频色9| 亚洲成aⅴ人片在线观| 蜜桃AV无码免费看永久| 亚洲无砖砖区免费| 黄瓜视频影院在线观看免费| 亚洲精品综合在线影院| 巨胸喷奶水视频www网免费| 亚洲一卡一卡二新区无人区| 永久免费毛片手机版在线看| 日本免费精品一区二区三区 | 伊人久久亚洲综合影院| 一区二区三区精品高清视频免费在线播放| 免费看国产精品麻豆| 国产黄色免费观看| 亚洲av成人无码久久精品| 最近中文字幕大全中文字幕免费 | 亚洲精品乱码久久久久久不卡| 成年免费a级毛片| 亚洲永久无码3D动漫一区| 99久久精品国产免费| 亚洲日本va在线观看| 国产精品美女自在线观看免费| 特级做a爰片毛片免费看| 亚洲色精品88色婷婷七月丁香| 精品无码无人网站免费视频| 亚洲午夜无码久久久久小说| 免费一级特黄特色大片在线| 免费h视频在线观看| 亚洲一级毛片中文字幕| 免费h黄肉动漫在线观看 | 久久久久国产精品免费免费搜索| 亚洲综合av一区二区三区| 亚洲综合久久夜AV | 啦啦啦完整版免费视频在线观看| mm1313亚洲国产精品无码试看 |