Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用id中的单击的Jquery动态树插件_Javascript_Jquery - Fatal编程技术网

Javascript 使用id中的单击的Jquery动态树插件

Javascript 使用id中的单击的Jquery动态树插件,javascript,jquery,Javascript,Jquery,使用Firebug,我发现Dynatree插件更改了以下代码: <li id="id3.1" class="expanded">Menu 1 <ul> <li id="id3.1.1">Sub-menu 1</li> </ul> </li> 我的问题:这是使用Dynatree执行单击事件的唯一方法吗?我认为这是最好的选择,因为它使用插件的API,但当然您仍然可以像这样将事件附加到: $('a.dyn

使用Firebug,我发现Dynatree插件更改了以下代码:

<li id="id3.1" class="expanded">Menu 1
  <ul>
        <li id="id3.1.1">Sub-menu 1</li>
  </ul>
</li>

我的问题:这是使用Dynatree执行单击事件的唯一方法吗?

我认为这是最好的选择,因为它使用插件的API,但当然您仍然可以像这样将事件附加到

$('a.dynatree-title').live('click', function(e){
     //here e.target is the link you have clicked
});

是的,你有什么建议,使用api,每个菜单都有一个带外壳的开关?是的,我认为这是一个很好的选择)但我不是dynatree的专家,无论如何使用api都要好得多,还因为通常升级插件时api保持一致,html标记不一致)注意还有“onClick”事件,这将在每次单击时触发,而onActivate仅在新访问节点时触发。如果将“GenerateID”选项设置为true,则节点ID将保留在生成的HTML代码中。无论如何,正如Nicola所建议的,建议使用API事件(顺便说一句:据我所知,根据RFC,IDs中不允许使用“.”
$("#treeMenu").dynatree({
    onActivate: function(node){
        var menuTitle = node.data.title;
        alert(menuTitle);
    }
});
$('a.dynatree-title').live('click', function(e){
     //here e.target is the link you have clicked
});