[教學] thickbox使用技巧

看板Ajax作者 (10Ways-擁抱高雄)時間17年前 (2007/11/22 01:28), 編輯推噓2(201)
留言3則, 3人參與, 最新討論串1/1
原始網站:http://0rz.tw/c13lA thickbox是一個不錯的對話框插件,不過官方站提供的使用方法具限性很大。比如,我頁面上有個縮略圖,點擊之後用thickbox顯示大圖。使用官方的方法: <a href="大圖的URL" title="簡介" class="thickbox"><img src="小圖的URL" border="0"/></a> 第一、你必須為每個這樣的img標簽外套一個a標簽 第二、只能用class="thickbox"讓thickbox去綁定事件 第三、不能自己定義事件 Www.Chinaz.com 第四、當使用AJAX載入頁面後,載入的頁面內的這些DOM不會被thickbox綁定 稍稍看了下thickbox的代碼,其實以上問題完全可以使用thickbox自己的方法來解決,以下舉例說明。 例一、我能自己定位到需要用thickbox的元素,不想再加上class="thickbox"。HTML如下: 以下為引用的內容: <div id="PicList"> <a href="Pic01.jpg"><img src="Pic01s.jpg" border="0"/></a> <a href="Pic02.jpg"><img src="Pic01s.jpg" border="0"/></a> </div> 需要對id="PicList"裏面的a標簽下的img使用thickbox,代碼如下: 以下為引用的內容: $(function() { tb_init("#PicList a[img]");}); 例二、我用AJAX載入了一段HTML,但該HTML裏的class="thickbox"這樣的標簽點擊了沒有任何反應。解決此問題只要在AJAX載入HTML並更新到頁面後執行下以下代碼: tb_init('a.thickbox, area.thickbox, input.thickbox'); //引號裏的是thickbox的默認選擇器,你可以使用例一內這樣的自定義選擇器 Chinaz 例三、我想點擊img標簽後顯示thickbox,不想在img標簽外面再套<a url="大圖" class="thickbox">這樣的標簽。縮略圖URL只不過在大圖URL的後綴前加了s。比如大圖是pic01.jpg、小圖是pic01s.jpg。使用以下方法可以做到。HTML如下: 以下為引用的內容: <div id="PicList"> <img src="Pic01s.jpg" border="0"/> <img src="Pic01s.jpg" border="0"/> </div> 代碼如下: 以下為引用的內容: $(function() { $("#PicList img").click(function() { tb_show("",this.src.substring(0,this.src.length-5)+'.jpg',false); });}); 另外,如果想用其它事件,請使將例3裏的click改成你想觸發thickbox的事件。 -- 得罪,就咒殺他。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.56.141.142

11/22 03:54, , 1F
推薦這篇文章^^
11/22 03:54, 1F

11/22 13:17, , 2F
他說的例二,那個是要寫在哪裡?
11/22 13:17, 2F

11/22 23:24, , 3F
jQuery1.2.1似乎不支援,要用舊版的.
11/22 23:24, 3F
文章代碼(AID): #17H6hRn_ (Ajax)
文章代碼(AID): #17H6hRn_ (Ajax)