我想从focus
anchor tag
URL
锚标记
<a id='714895'> </a>
网址
http://test.com/sites/alzheimers-disease-early-detection.aspx?ShowAllComments=True#714895
jQuery代码
try
{
if(document.URL.indexOf("?ShowAllComments=True#") >= 0){
var elementClicked = "#" +location.href.split('#')[1];
$("elementClicked").focus();
}
catch(e)
{alert(e.message);}
也试过
try
{
if(document.URL.indexOf("?ShowAllComments=True#") >= 0){
var elementClicked = "#" +location.href.split('#')[1];
$("elementClicked").focus().focus();
}
catch(e)
{alert(e.message);}
和
try
{
if(document.URL.indexOf("?ShowAllComments=True#") >= 0){
setTimeout(function(){
var elementClicked = "#" +location.href.split('#')[1];
$("elementClicked").focus();},100);
}
}
catch(e)
{alert(e.message);}
代码在Firefox
和Chrome
上完美运行,但在I.E
中不起作用。
任何其他方式或修改都应该在I.E中进行。
答案 0 :(得分:0)
尝试:
window.setTimeout(function(){
var elementClicked = "#"+location.href.split('#')[1];
$('#elementClicked').focus(); }, 100);
IE 11时间聚焦其他控件,然后窃取焦点并将其添加到elementClicked。
否则试试这个。
try {
function elementFocus(e){
if(document.URL.indexOf("?ShowAllComments=True#") >= 0){
var elementClicked = "#" +location.href.split('#')[1];
$("elementClicked").focus();
e.preventDefault();
}
}
catch(e){alert(e.message);}