Ztree使用之为图标添加点击事件

写在前面的话:

  最近有个需求是为Ztree的图标添加点击事件,心想这好办呀,读读Ztree的官方文档一定会有相应的图标点击事件的,于是我打开了Ztree的官网 ,找了好久没有直接针对图标的点击事件,我的三千烦恼丝又要开始掉了。

解决办法:

  好在我相信一个道理:“只要思想不滑坡,办法总比困难多!”,既然没有直接的点击事件那还有间接的点击事件,如:onClick,onMouseDown,onMouseUp等,他们都带有三个参数:event(标准的js event对象),treeId(对应ZTree的treeId),treeNode(被点击的结点JSON数据对象)。对于点击图标还是点击结点名称可以用event对象来判断,根据我的实践得出event.target.id 保存了被点击对象的idztree 结点的id图标默认写法是:TreeId+数字编号+“_ico”,而文字是:TreeId+数字编号+“_span”,复选框是:TreeId+数字编号+“_check”。

那么知道以上的信息就好办了,在随便一个有包含event参数的CallBack点击事件中 对event.target.id 进行判断如果id有包含“_ico”的话就是在图标上触发的点击事件。就可以在判断成功之后写点击图标的事件了。

一下附上Demo代码:

  onMouseDown: function (event, treeId, treeNode) {
                if (event.target.id && event.target.id.lastIndexOf("_ico") > -1) {
                    //写你的图标点击事件代码
                }
            }

原文地址:https://www.cnblogs.com/lin494910940/p/12604461.html

时间: 2024-10-03 00:40:22

Ztree使用之为图标添加点击事件的相关文章

IOS - UIView添加点击事件

UIView通过手势(Gesture-UITapGestureRecognizer)添加点击事件, 类似于UIButton的效果. 示例: UIImageView *iKnowIcon = [CYResource loadImageView:@"free-question-once-more-i-know.png"]; iKnowIcon.top = questionIcon.top + scaleWidthWith320(200); iKnowIcon.centerX = self.

echarts对每个data[i]的图片添加点击事件

1.综述:以饼图为例,只需要对echarts对象option添加以下几行代码即可 //添加点击事件(单击),还有其他鼠标事件和键盘事件等等 myChart1.on("click", function (param){ alert(param.dataIndex+':'+option1.series[0].data[param.dataIndex].name); }); 2.效果图 3.目录结构 4.<head></head>和<body></b

使用for循环添加点击事件时,获取i值的方法

比如页面上有一个ul,数个li,现在给li添加点击事件. var li = document.getElementsByTagName("li"); for(var i = 0; i < li.length; i++) { li[i].addEventListener("click",function () { console.log(i); }) } 但是,这样写之后我们发现,点击任何一个li,打印的值都为5,这是因为闭包中共用i值,而i的值由于执行for循

UIView利用hitTest添加点击事件

UIView利用hitTest添加点击事件 by 伍雪颖 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { CGPoint point = [[touches anyObject] locationInView:self.view]; CALayer *layer = [self.view.layer hitTest:point]; if (layer == self.blueView.layer) { [[[U

为未来元素添加点击事件的两种写法

哈哈哈,小七来了,对于经常搬砖撸代码的猴子们,一定会遇到给好多li(死的还是动态字符串拼接生成的(对未来元素添加不到事件的看之前写的事件委托))添加点击事件 第一种: var index=0; for(var i=0;i<li.length;i++){ li[i].index=i;//必须的 li[i].onclick=function(){ alert(1) } } 第二种: 事件的另一种写法(动态生成的多个li标签都加onclick="jia(this)就不用for循环里面嵌套点击事件

Qt:添加点击事件的Label并显示图片

1.给label添加点击事件 Qt中原本的label是没有点击事件的,如果想添加点击事件的话,可以继承QLabel类并重载鼠标事件(比如mousePressedEvent),然后在鼠标事件中发送一个信号,具体如下: // clicklabel.h #ifndef CLICKEDLABEL_H #define CLICKEDLABEL_H #include <QWidget> #include <QLabel> class ClickedLabel : public QLabel {

【Swift 2.1】为 UIView 添加点击事件和点击效果

前言 UIView 不像 UIButton 加了点击事件就会有点击效果,体验要差不少,这里分别通过自定义和扩展来实现类似 UIButton 的效果. 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民伯伯: http://over140.cnblogs.com 正文 一.为 UIView 添加点击事件 extension UIView { func addOnClickListener(target: AnyObject, action: Sel

iOS开发&mdash;&mdash;给ImageView添加点击事件

      给ImageView添加点击事件   1: cell.pictureView.userInteractionEnabled = YES; 2: UITapGestureRecognizer *gr = [[UITapGestureRecognizer alloc]initWithTarget:cell action:@selector(displayPicture:)]; 3: gr.numberOfTapsRequired = 1; 4: gr.numberOfTouchesReq

添加点击事件

在ButtonSprite中封装了点击事件ButtonSprite btn = new ButtonSprite(0, 0, Button, this.getVertexBufferObjectManager());btn.setOnClickListener(new OnClickListener() {                @Override                public void onClick(ButtonSprite pButtonSprite, float p