gpt4 book ai didi

jquery - .focus() 在关闭 DOMWindow() [JQuery] 后不起作用

转载 作者:行者123 更新时间:2023-11-28 02:16:26 25 4
gpt4 key购买 nike

我有一系列 DIV 元素,单击这些元素时会触发 DOMWindow 打开事件。没问题。

然后我必须添加键盘辅助功能。卫生部!!

我向 DIV 添加了 tabindex 属性,允许用户从一个 DIV 切换到下一个 DIV,并且我添加了一个按键处理程序来处理 Enter 键。没问题。

我遇到的问题是试图将焦点设置回用户在按下 Enter 键并打开 DOMWindow 时所在的 div(以便他们可以继续跳转到系列中的下一个 DIV)。

我尝试向 DOMWindow 的“functionCallOnClose”设置中添加一个函数,但它似乎没有做任何事情。

这是一个代码片段。这会将点击和按键事件绑定(bind)到类名为“timeEntry”的所有 DIV:

$(".timeEntry").live("click keypress", function () {

// bunch of code here to set up the DOMWindow...

$.openDOMWindow({

// bunch of settings here...

functionCallOnClose: function () {
// this doesn't work
// 'DivId' is the object (DIV) that was clicked on
$(DivId).focus();
}
});

});

有谁知道为什么在触发和处理点击或按键事件后我似乎无法将焦点返回到原始 DIV?

我意识到这是一个非常晦涩的问题,所以我把它扔在那里希望阅读这篇文章的其他人正在使用 JQuery、DOMWindow 以及处理点击和按键事件(或者至少知道如何操作)

:o)

编辑: 进一步调试后,jQuery 从 DIV 标签获取 tabIndex 属性似乎有问题。当我查看我的页面的源代码时,我可以看到属性:

<div id="someDiv" class="someClass" tabindex="1"> ... </div>

但是,当我尝试使用 jQuery 获取该属性时,它似乎并不存在。

这段代码返回“undefined”

var tabindex = $("#someDiv").attr("tabindex");

但是,如果我使用 jQuery 设置该属性,我可以返回并检索它:

// set the tabindex
$("#someDiv").attr("tabindex", "1");

// now this returns "1"
var tabindex = $("#someDiv").attr("tabindex");

有没有人知道为什么 jQuery 在 HTML 中设置时不返回 tabindex 属性,但在使用代码动态设置后它会返回?

希望这是有道理的...

最佳答案

这个问题听起来很有趣,所以我做了一些搜索并找到了这个:http://api.jquery.com/attr/#comment-92512642

这可能是 jquery 版本 1.4.3 中的错误(根据链接在 1.4.2 中工作)。

关于jquery - .focus() 在关闭 DOMWindow() [JQuery] 后不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4028200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com