我在使用 jquery-ui 选项卡对象时遇到了一个奇怪的问题。如果我突出显示选项卡上的 html 输入标记 (type="text") 的文本,切换选项卡,然后返回到原始选项卡,此文本仍会突出显示。我实际上可以在切换标签之前删除突出显示,当我回来时,文本再次突出显示。在触发选项卡的显示事件后,我试图通过在文本框上调用 .blur() 来删除此突出显示,但这不起作用。同样,实际上单击页面的其他部分(我认为 blur() 相当于)不会删除文本的突出显示。还有什么我可以在这里做的吗?
谢谢。
我在使用 jquery-ui 选项卡对象时遇到了一个奇怪的问题。如果我突出显示选项卡上的 html 输入标记 (type="text") 的文本,切换选项卡,然后返回到原始选项卡,此文本仍会突出显示。我实际上可以在切换标签之前删除突出显示,当我回来时,文本再次突出显示。在触发选项卡的显示事件后,我试图通过在文本框上调用 .blur() 来删除此突出显示,但这不起作用。同样,实际上单击页面的其他部分(我认为 blur() 相当于)不会删除文本的突出显示。还有什么我可以在这里做的吗?
谢谢。
我通过修改输入 DOM 对象的 selectionStart 属性解决了手头的问题。通过将其设置为 selectionEnd 属性,可以确保没有突出显示任何文本。selectionStart 属性在我原来的突出显示时被更改,所以当我回到选项卡时,文本被重新突出显示。下面的解决方案。
$(this).find('input').each(function () {
var input = document.getElementById($(this).attr("id"));
try {
input.selectionStart = input.selectionEnd;
}
catch (err) {
}
});