• layui的layer.confirm获取按钮焦点


    因为ayer.confirm的按钮并非采用button,而是a标签,所以获取按钮焦点获取不到,要采用别的方法,下面介绍在ie11中和ie8中不同的写法

    ie11

    1. layer.confirm('确定取消这个弹窗吗?',{
    2. btn: ['确定', '取消'],
    3. success:function(layero){
    4. //获取焦点
    5. var btn = layero[0].getElementsByClassName('layui-layer-btn')
    6. [0].getElementsByTagName('A')[0];
    7. btn.href = 'javascript:void(0)';
    8. btn.focus();
    9. },
    10. title:"提示"
    11. },function(index){
    12. layer.close(index);
    13. //你的操作
    14. });
    15. })

    在ie8中不支持getElementsByClassName方法,我们需要对它做额外的处理

    1. layer.confirm('确定取消这个弹窗吗?',{
    2. btn: ['确定', '取消'],
    3. success:function(layero){
    4. //获取焦点
    5. var btn = getElementsByClassName('layui-layer-btn')
    6. [0].getElementsByTagName('A')[0];
    7. btn.href = 'javascript:void(0)';
    8. btn.focus();
    9. },
    10. title:"提示"
    11. },function(index){
    12. layer.close(index);
    13. //你的操作
    14. });
    15. })

    重写getElementsByClassName方法

    1. var getElementsByClassName = function (searchClass, node,tag) {
    2. var result = [];
    3. node = node || document;
    4. tag = tag || "*";
    5. var classes = searchClass.split(" "),
    6. elements = (tag === "*" && node.all) ? node.all: node.getElementsByTagName(tag),
    7. patterns = [],
    8. current,
    9. match;
    10. var i = classes.length;
    11. while (--i >= 0) {
    12. patterns.push(new RegExp("(^|\\s)" + classes[i] + "(\\s|$)"));
    13. }
    14. var j = elements.length;
    15. while (--j >= 0) {
    16. current = elements[j];
    17. match = false;
    18. for (var k = 0,
    19. kl = patterns.length; k < kl; k++) {
    20. match = patterns[k].test(current.className);
    21. if (!match) break;
    22. }
    23. if (match) result.push(current);
    24. }
    25. return result;
    26. }

     后种方法是兼容的不怕麻烦的可直接采取后种方法

  • 相关阅读:
    2022.9 PAT甲级题解
    优雅打印的随机名言
    若依注解学习(二)@DataScope
    leetcode题刷250天(87)——654. 最大二叉树(DFS)
    C++ string常用函数用法总结
    vue-next-admin本地部署
    人脸美化和人脸识别在美颜SDK中的具体应用
    借助MLOps平台简化联邦学习工作流程
    正则表达式入门二(普通字符)
    《高性能网站建设进阶指南》阅读笔记
  • 原文地址:https://blog.csdn.net/ok060/article/details/134447874