基于jQuery實現(xiàn)仿QQ空間送禮物功能代碼
我們在QQ空間里面有一個送禮物的功能,顯示了最近過生日的人。我們只要把鼠標放到如下圖的生日快樂那標簽上,就會顯示可以給該人送的禮物??!
如下圖所示:
單擊其中的一個禮物,就會馬上送出去。但是我們現(xiàn)在是要說的還有單擊更多的時候,會另外彈出一個新的窗口在當前頁面最前面!如下圖顯示:
怎么實現(xiàn)那上面的功能呢?
就是把鼠標放上去,彈出一天tips,單擊tips里面的控件,之后彈出另外一個彈出框。
網(wǎng)上就會有很多比較好的插件,就先到網(wǎng)上去找了相對應的jquery插件。
jquery中tips的有很多插件,但是大部分都是跟隨鼠標走的,你離開那個指定的位置就會消失?,F(xiàn)在這個是把鼠標是要可以放到彈出的tips上面的。之后發(fā)現(xiàn)了一款符合需求又很強大的tips插件poshytip。poshytip使用簡單,它還可以支持ajax來動態(tài)的加載內(nèi)容來的,就可以通過數(shù)據(jù)庫來調(diào)用指定分類的禮物出來了。
更多的poshytip示例和演示在:http://vadikom.com/demos/poshytip/
還需要一個彈出層的,為了更容易的去實現(xiàn),把彈出層另外新作了一個頁面,點擊更多的時候在當前窗口加載另外一個新的頁面作為彈出層。
彈出層的很多,用colorbox等其它jquery插件。直接只用使用之后,發(fā)現(xiàn)彈出來的窗口說鏈接錯誤!或者被取消彈出層等。那是因為我們在單擊了更多的時候,彈出了一個新的窗口,鼠標離開了tips彈出來的窗口,這時候那tips出來的就會消失,而彈出加載另外的頁面的被取消了。
那是要我自己來弄一個彈出層插件來了么,能寫當然好 。對于不是js告訴來,找一款比較簡單的來定制不是更快捷。這里http://chabaoo.cn/article/84902.htm比較秀珍的彈出層插件。使用和修改起來也非常方便了。
用poshytip的方法loadposhytip里面加載了內(nèi)容后就給綁定給更多綁定popdialog方法。只要我們就可以實現(xiàn)那功能了。
實現(xiàn)的方式就是那樣的了,下面是我使用的部分js代碼
function loadRecommenClick() { if ($("#floatBoxBg").length == 0) { $(".moreRecommend").PopDialog({ Event: "click", //觸發(fā)響應事件 title: "送禮物", //彈出層的標題 content: "/peoplename/toPeople.aspx?typeId=", //彈出層的內(nèi)容獲取(text文本、容器ID名稱、URL地址、Iframe的地址) width: 630, //彈出層的寬度 height: 400, //彈出層的高度 scrollTop: 200 //層滑動的高度也就是彈出層時離頂部滑動的距離 }); } } function loadposhytip(currClass) { $("." + currClass).poshytip({ className: 'tip-yellowsimple', content: function (updateCallback) { classId = $(this).attr("classId"); var htmss = ""; $.getJSON(gifturl + '?ac=1&classId=' + classId + '&pageSize=6&pageIndex=1' + "&r=" + Math.random(), function (data) { var container = "<div id=\"sphtml\" class=\"giftInfo1\">"; container += "<div> 精選好禮,點擊就可贈送哦!</div>"; container += "<div class=\"birthdayGift\">"; $.each(data[0].items, function (i, item) { container += " <img src=\"" + item.pic + "\" alt=\"送此件禮物給\" onclick=\"sendgift(this)\" gid=\"" + item.id + "\" yulu=\"" + item.defaultYulu + "\"/>"; }); container += "</div>"; container += "<div class=\"moreRecommend\" >更多推薦</div>"; container += "</div>"; if (data[0].count == "0") container = "還沒有添加禮品,請聯(lián)系管理員添加!"; updateCallback(container); } ); return "加載中....."; }, alignTo: 'target', alignX: 'center', alignY: 'bottom', offsetX: 0, offsetY: 5 }); loadRecommenClick(); }
由于這是用在項目中去了,沒有做出demo出來,我就只上圖兩種了。其中禮物都是通過數(shù)據(jù)庫添加的,ajax加載出來的。
以上所述是小編給大家介紹的基于jQuery實現(xiàn)仿QQ空間送禮物功能代碼的相關(guān)知識,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
jQuery插件DataTables分頁開發(fā)心得體會
這篇文章主要為大家分享了jQuery插件DataTables分頁開發(fā)心得體會,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08基于jquery的button默認enter事件(回車事件)。
這里我介紹一下,button按鈕默認回車(enter)事件。如果大家可以用submit,就不用看以下代碼,因為submit可以直接默認回車事件(enter)2011-05-05jQuery easyui的validatebox校驗規(guī)則擴展及easyui校驗框validatebox用法
這篇文章主要介紹了jQuery easyui的validatebox校驗規(guī)則擴展及easyui校驗框validatebox用法的相關(guān)資料,需要的朋友可以參考下2016-01-01jquery dialog open后,服務器端控件失效的快速解決方法
本篇文章是對jquery dialog open后,服務器端控件失效的快速解決方法。進行了詳細的分析介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12ASP.NET jQuery 實例9 通過控件hyperlink實現(xiàn)返回頂部效果
ASP.NET jQuery 實例9 通過控件hyperlink實現(xiàn)返回頂部效果的實現(xiàn)代碼,需要的朋友可以參考下2012-02-02Jquery實現(xiàn)無縫向上循環(huán)滾動列表的特效
今天小編就為大家分享一篇關(guān)于Jquery實現(xiàn)無縫向上循環(huán)滾動列表的特效,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-02-02jquery獲取子節(jié)點和父節(jié)點的示例代碼
獲取子節(jié)點和父節(jié)點的方法有很多,在本文為大家詳細介紹下jquery中時如何實現(xiàn)的,感興趣的朋友可以參考下2013-09-09