欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

bootstrap-treeview自定義雙擊事件實現(xiàn)方法

 更新時間:2016年01月09日 08:48:08   作者:程序員之路  
這篇文章主要介紹了bootstrap-treeview自定義事件雙擊事件實現(xiàn)方法,需要的朋友可以參考下

bootstrap-treeview是一款效果非常酷的基于bootstrap的jQuery多級列表樹插件。該jQuery插件基于Twitter Bootstrap,以簡單和優(yōu)雅的方式來顯示一些繼承樹結構,如視圖樹、列表樹等等。但是不知為什么這個插件沒有自帶雙擊事件。
經過多次測試,使用方法$('#tree').dblclick( function () {})和方法$('#tree').on('dblclick',function(){})都不起作用!百思不得其解。最后救助大神,問題解決了,但是好像不太優(yōu)雅但最終還是可以交差了。

這個解決方案中使用到了bootstrap-treeview自帶的兩個事件"nodeSelected"和"nodeUnselected".如果在treeview的節(jié)點上雙擊一定會觸發(fā)選中事件和取消選中事件,計算這兩個時間的時間間隔就可以模擬出雙擊事件的效果了。雙擊事件每次點擊鼠標左鍵的間隔,人為操作300毫秒足夠。

具體代碼如下:

<!DOCTYPE html>
<html>

 <head>
  <meta charset="utf-8" />
  <title></title>
  <link href="css/bootstrap.css" rel="stylesheet" />
 </head>

 <body>
  <div id="tree" style="width: 400px;height: 1000px;margin-left: auto;margin-right: auto;"></div>
  <div id="testDate"></div>
  <script src="js/jquery.js"></script>
  <script src="js/bootstrap-treeview.js"></script>
  <script type="text/javascript">
   //獲取樹形結構列表數據
   function getTree() {
    var tree = [{
     text: "Parent 1",
     nodes: [{
      text: "Child 1",
      nodes: [{
       text: "Grandchild 1"
      }, {
       text: "Grandchild 2"
      }]
     }, {
      text: "Child 2"
     }]
    }, {
     text: "Parent 2"
    }, {
     text: "Parent 3"
    }, {
     text: "Parent 4"
    }, {
     text: "Parent 5"
    }];
    return tree;
   }
   
   //初始化樹形結構列表
   $('#tree').treeview({
    data: getTree()
   });
   
   //最后一次觸發(fā)節(jié)點Id
   var lastSelectedNodeId = null;
   //最后一次觸發(fā)時間
   var lastSelectTime = null;
   
   //自定義業(yè)務方法
   function customBusiness(data){
    alert("雙擊獲得節(jié)點名字: "+data.text);
   }

   function clickNode(event, data) {
    if (lastSelectedNodeId && lastSelectTime) {
     var time = new Date().getTime();
     var t = time - lastSelectTime;
     if (lastSelectedNodeId == data.nodeId && t < 300) {
      customBusiness(data);
     }
    }
    lastSelectedNodeId = data.nodeId;
    lastSelectTime = new Date().getTime();
   }
   
   //自定義雙擊事件
   function customDblClickFun(){
    //節(jié)點選中時觸發(fā)
    $('#tree').on('nodeSelected', function(event, data) {
     clickNode(event, data)
    });
    //節(jié)點取消選中時觸發(fā)
    $('#tree').on('nodeUnselected', function(event, data) {
     clickNode(event, data)
    });
   }
   $('#tree').dblclick( function () { alert("Hello World!"); });
   $(document).ready(function() {
    //customDblClickFun();
   });
  </script>
 </body>

</html>

粗濾講解:

最主要的全局變量:lastSelectedNodeId,lastSelectedNodeId

最主要的方法:clickNode()

上面這個方法主要用來判斷選中事件和取消選中事件操作的目標是否是一個且時間間隔是否足夠小。符合這兩個條件客戶就是想觸發(fā)雙擊事件??梢栽俸瘮礳ustomBusiness中自定義業(yè)務邏輯。

如果大家還想深入學習,可以點擊這里進行學習,再為大家附兩個精彩的專題:Bootstrap學習教程 Bootstrap實戰(zhàn)教程

以上就是本文的詳細內容,希望對大家的學習有所幫助。

相關文章

  • 倒記時60刷新網頁的js代碼

    倒記時60刷新網頁的js代碼

    這篇文章主要介紹了倒記時60刷新網頁的js代碼,需要的朋友可以參考下
    2014-02-02
  • js setTimeout實現(xiàn)延遲關閉彈出層

    js setTimeout實現(xiàn)延遲關閉彈出層

    有時候我們希望彈出層能夠實現(xiàn)延遲關閉,并且鼠標在彈出層區(qū)域移動的時候能夠保持顯現(xiàn),下面是具體的實現(xiàn)代碼。
    2010-04-04
  • JavaScript中極易出錯的操作符運算總結

    JavaScript中極易出錯的操作符運算總結

    這篇文章主要給大家介紹了關于JavaScript中極易出錯的操作符運算的相關資料,包括了算術運算符、比較運算符、邏輯運算符、賦值運算符、一元運算符以及運算優(yōu)先級等問題,需要的朋友可以參考下
    2021-08-08
  • 一文帶你掌握axios 工具函數

    一文帶你掌握axios 工具函數

    這篇文章主要為大家介紹了axios 工具函數使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • echarts圖表設置寬度100%結果為100px的解決辦法

    echarts圖表設置寬度100%結果為100px的解決辦法

    在開發(fā)一個前端項目時需要用到Element-ui的el-tabs組件和Echart開源庫,當兩者嵌套使用時,我給Echart中的圖表寬度設置為了100%,但是實際的寬度卻只有100px,這篇文章主要給大家介紹了關于echarts圖表設置寬度100%結果為100px的解決辦法,需要的朋友可以參考下
    2022-12-12
  • 解決循環(huán)中setTimeout執(zhí)行順序的問題

    解決循環(huán)中setTimeout執(zhí)行順序的問題

    今天小編就為大家分享一篇解決循環(huán)中setTimeout執(zhí)行順序的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • uniapp開發(fā)安卓App實現(xiàn)高德地圖路線規(guī)劃導航功能的全過程

    uniapp開發(fā)安卓App實現(xiàn)高德地圖路線規(guī)劃導航功能的全過程

    最近項目需要在APP內實現(xiàn)路線規(guī)劃導航功能,直接打開高德地圖進行導航,下面這篇文章主要給大家介紹了關于利用uniapp開發(fā)安卓App實現(xiàn)高德地圖路線規(guī)劃導航功能的相關資料,需要的朋友可以參考下
    2022-08-08
  • JavaScript設計模式之適配器模式介紹

    JavaScript設計模式之適配器模式介紹

    這篇文章主要介紹了JavaScript設計模式之適配器模式介紹,適配器模式,一般是為要使用的接口,不符本應用或本系統(tǒng)使用,而需引入的中間適配層類或對象的情況,需要的朋友可以參考下
    2014-12-12
  • JS DOM 操作實現(xiàn)代碼

    JS DOM 操作實現(xiàn)代碼

    JS DOM 操作實現(xiàn)代碼,學習dom操作的朋友可以參考下。
    2010-08-08
  • 微信小程序之多文件下載的簡單封裝示例

    微信小程序之多文件下載的簡單封裝示例

    本篇文章主要介紹了微信小程序之多文件下載的簡單封裝示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01

最新評論