2015-07-22 6 views
1

У меня есть этот код:Удалить фокус из iframe?

<iframe src="/go/afflink.php" width="100%" height="400px" seamless="seamless" scrolling="yes" frameborder="0"></iframe> 

Очевидно afflink.php является партнерская ссылка на внешний сайт, поэтому у меня нет доступа к этому.

IFrame находится в нижней части моей обзорной страницы. Проблема в том, что всякий раз, когда я открываю страницу, браузер прокручивается вниз, чтобы показать iframe. Я бы хотел, чтобы браузер игнорировал фокус. Как мне это сделать?

Я искал вокруг stackoverflow, и, как представляется, для меня не работает «javascript focus on other element».

+1

Это необычно. Во всяком случае, вы попробовали это при загрузке? window.scrollTo (0, 0); –

+0

Пробовал. Не работает – 10now

ответ

0

Если предполагается, что iframe не обслуживается из того же домена .. вы можете поместить любой другой настраиваемый элемент dom после iframe в нижнем колонтитуле с автофокусом, установленным как true. И если это не работает, пожалуйста, попробуйте следующее в главном окне родительском:

$(window).on('load', function() { 
    setTimeout(function(){$("body").focus()}, 100); 
}; 

ИЛИ идя ванильным JS

window.onload = function() { 
    document.getElementById("some-focusable-element-from-parent-window").focus(); 
}; 
+1

Можете ли вы объяснить немного больше, почему «прокрутка» (http://www.w3schools.com/tags/att_iframe_scrolling.asp) приведет к описанному поведению? – Florian

+0

Я сделал то, что вы сказали, но никакого результата. Даже если я полностью удалю прокрутку, это не сработает. Есть идеи? – 10now

+0

обновленная попытка с этим –

Смежные вопросы