layer.open后,如果使弹出页面获取焦点

在JavaScript中,使弹出页面获取焦点的方法包括为父页面弹框设置和在子页面设置聚焦元素,如text输入框或a标签。若无可用聚焦元素,可通过给div添加tabindex属性使其具有焦点事件。示例代码展示了如何为div添加onfocus和onblur事件,并在不同浏览器中去除焦点虚线。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 第一步,父页面弹框设置

layui.use('layer', function () {
    var layer = layui.layer;
    layer.open({
        shade: [0.1, "#fff", true],
        shift: 2,
        fix: false,
        title: ['新增订单', 'backgroup:#252325;color:breck;'],
        maxmin: true,
        type: 2,
        scrollbar: true,
        area: ['100%', '100%'],
        content: ['/Order/Goods_addorder'],
        success: function (layero, index) {
         //父页面找子页面的数据进行聚焦
            var bod = layer.getChildFrame('body', index);
            bod.find("#spxq222").focus();
        }
    });
});

第二步,在子页面设置可以执行聚焦的text文本框或者a标签

如果没有可以执行的a标签或者text文本框使用以下方法

 

默认火狐或者其他浏览器里DIV和其他普通标签是不具有onfocus和onblur事件的,经我长久论证因为他们不具有tab属性,所以只要我们创建tab,那么任何标签都可以具有tab属性。

什么标签具有tab呢?显然input和a是得天独厚的具有,我们经常用键盘上的tab键进行移动光标的时候,我们发现光标只在具有tab属性的元素上进行跳转。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值