jQuery MiniUI

 找回密码
 立即注册
查看: 4692|回复: 3
打印 上一主题 下一主题

Combox控件方法冲突 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2018-4-18 11:04:18 |只看该作者 |倒序浏览
之前在咱们论坛上请教了一下获得光标自动打开文本框的方法,注册了这个方法之后,点击文本框中的下三角图标打开下拉框时,第一次会闪一下,(就是打开后又关闭了),第二次才会正常打开,想问一下点击文本框中的下三角图标打开下拉框这个方法怎么能重写一下,处理一下和focus事件的冲突。附图片:代码:/**
* 获取光标时并弹出下拉框且选中默认值 gyy 2017-12-26
* @param field
*/
function showPopupByKey(field){
   
    var combo = mini.get(field);
    var blurTimer;
    var focused = false;

    if(typeof(combo) == "undefined") return;
   
    combo.on("focus", function (e) {
        if (blurTimer) clearTimeout(blurTimer);
        blurTimer = null;

        if (!focused) {
            focused = true;
            if (combo.isShowPopup()) return;            
            combo.showPopup();
        }
    });

    combo.on("blur", function (e) {
        if (combo.isShowPopup()) return;
        blurTimer = setTimeout(function () {
            if (combo.isShowPopup()) return;
            focused = false;
        }, 50);
    });

    $(combo.el).find(".mini-buttonedit-button").on("mousedown click", function () {
        setTimeout(function () {
            combo.focus();
        }, 10);
    });
}
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

沙发
发表于 2018-4-18 19:45:37 |只看该作者
我们看一下

Rank: 8Rank: 8

板凳
发表于 2018-4-19 10:52:06 |只看该作者
$(combo.el).find(".mini-buttonedit-button").on("mousedown click", function (e) {
            if (combo.isShowPopup()) {
                e.stopPropagation();
            }
        });
这样试试

Rank: 2

地板
发表于 2018-4-19 13:04:44 |只看该作者
dforce 发表于 2018-4-19 10:52
$(combo.el).find(".mini-buttonedit-button").on("mousedown click", function (e) {
            if (co ...

这样可以,问题已经解决了。谢谢!

Archiver|普加软件

GMT+8, 2025-7-7 19:23 , Processed in 1.052266 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部