jQuery EasyUI實(shí)現(xiàn)右鍵菜單變灰不可用效果
首先,實(shí)現(xiàn)“除此之外全部關(guān)閉”變灰不可用。
當(dāng)只打開一個(gè)Tab選項(xiàng)卡時(shí),右鍵菜單里“除此之外全部關(guān)閉”就應(yīng)該變灰不可用,這樣可以提示用戶沒有除這一個(gè)選項(xiàng)卡沒有其他的選項(xiàng)卡了。程序?qū)崿F(xiàn)很簡(jiǎn)單了,只要獲得打開Tab選項(xiàng)卡的個(gè)數(shù),如果個(gè)數(shù)為1,那么就把“除此之外全部關(guān)閉”變灰不可用就行了。
var tabcount = $('#tabs').tabs('tabs').length; //tab選項(xiàng)卡的個(gè)數(shù) if (tabcount <= 1) { $('#mm-tabcloseother').attr("disabled", "disabled").css({ "cursor": "default", "opacity": "0.4" }); } else { $('#mm-tabcloseother').removeAttr("disabled").css({ "cursor": "pointer", "opacity": "1" }); }
說明:在Firfox,Google,Opera瀏覽器里,“disabled”的屬性不起作用,所以我加了一個(gè)CSS樣式,設(shè)置了一下它的透明度使它變灰。
效果圖:
圖一:除此之外全部關(guān)閉
第二,實(shí)現(xiàn)“當(dāng)前頁(yè)右側(cè)全部關(guān)閉”變灰不可用。
當(dāng)一個(gè)Tab選項(xiàng)卡的右側(cè)沒有選項(xiàng)卡的時(shí)候,這個(gè)Tab選項(xiàng)卡就應(yīng)該變灰不可用。程序?qū)崿F(xiàn)也不難,只要獲得最后一個(gè)Tab選項(xiàng)卡的標(biāo)題和當(dāng)前右鍵菜單所在的Tab選項(xiàng)卡的標(biāo)題進(jìn)行比較,如果一致,就把“當(dāng)前頁(yè)右側(cè)全部關(guān)閉”變灰不可用。
var tabs = $('#tabs').tabs('tabs'); //獲得所有的Tab選項(xiàng)卡 var tabcount = tabs.length; //Tab選項(xiàng)卡的個(gè)數(shù) var lasttab = tabs[tabcount - 1]; //獲得最后一個(gè)Tab選項(xiàng)卡 var lasttitle = lasttab.panel('options').tab.text(); //最后一個(gè)Tab選項(xiàng)卡的Title var currtab_title = $('#mm').data("currtab"); //當(dāng)前Tab選項(xiàng)卡的Title if (lasttitle == currtab_title) { $('#mm-tabcloseright').attr("disabled", "disabled").css({ "cursor": "default", "opacity": "0.4" }); } else { $('#mm-tabcloseright').removeAttr("disabled").css({ "cursor": "pointer", "opacity": "1" }); }
效果圖:
圖二:當(dāng)前頁(yè)右側(cè)全部關(guān)閉
第三,實(shí)現(xiàn)“當(dāng)前頁(yè)左側(cè)全部關(guān)閉”變灰不可用。
這個(gè)跟第二個(gè)相反就行了,獲得第一個(gè)Tab選項(xiàng)卡的標(biāo)題和當(dāng)前Tab選項(xiàng)卡的標(biāo)題進(jìn)行比較。
var onetab = tabs[0]; //第一個(gè)Tab選項(xiàng)卡 var onetitle = onetab.panel('options').tab.text(); //第一個(gè)Tab選項(xiàng)卡的Title if (onetitle == currtab_title) { $('#mm-tabcloseleft').attr("disabled", "disabled").css({ "cursor": "default", "opacity": "0.4" }); } else { $('#mm-tabcloseleft').removeAttr("disabled").css({ "cursor": "pointer", "opacity": "1" }); }
最后,實(shí)現(xiàn)的效果如下圖
圖三:當(dāng)前頁(yè)左側(cè)全部關(guān)閉
上面實(shí)現(xiàn)了三種情況下的變灰不可用的效果,當(dāng)鼠標(biāo)放到上面點(diǎn)擊,右鍵菜單就會(huì)消失,其實(shí)解決的辦法很簡(jiǎn)單,希望這篇文章可以給大家?guī)韱l(fā)。
相關(guān)文章
在頁(yè)面加載完成后通過jquery給多個(gè)span賦值
想在頁(yè)面加載完成后,有幾個(gè)地方顯示當(dāng)前時(shí)間,所以想通過jquery給多個(gè)span賦值,需要的朋友可以參考下2014-05-05JQuery textlimit 顯示用戶輸入的字符數(shù) 限制用戶輸入的字符數(shù)
顯示用戶輸入的字符數(shù) 限制用戶輸入的字符數(shù)的實(shí)現(xiàn)方法。2009-05-05jQuery Validate設(shè)置onkeyup驗(yàn)證的實(shí)例代碼
jQuery Validate 插件為表單提供了強(qiáng)大的驗(yàn)證功能,讓客戶端表單驗(yàn)證變得更簡(jiǎn)單,同時(shí)提供了大量的定制選項(xiàng),滿足應(yīng)用程序各種需求。這篇文章主要介紹了jQuery Validate設(shè)置onkeyup驗(yàn)證的相關(guān)資料,需要的朋友可以參考下2016-12-12jquery+css實(shí)現(xiàn)移動(dòng)端元素拖動(dòng)排序
這篇文章主要為大家詳細(xì)介紹了jquery+css實(shí)現(xiàn)移動(dòng)端元素拖動(dòng)排序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02jquery+easeing實(shí)現(xiàn)仿flash的載入動(dòng)畫
本文主要給大家講述的是如何使用jquery+easeing實(shí)現(xiàn)仿flash的載入動(dòng)畫的方法,附上示例代碼,非常細(xì)致全面,這里推薦給大家,希望對(duì)大家熟練使用jQuery有所幫助。2015-03-03jquery mobile實(shí)現(xiàn)撥打電話功能的幾種方法
在做一個(gè)便民服務(wù)電話,用到移動(dòng)web中列出的電話,點(diǎn)擊需要實(shí)現(xiàn)調(diào)用通訊錄,撥打電話功能,有需要的朋友可以參考一下2013-08-08