如何防止iframe在博客中获得关注?

时间:2014-06-10 08:31:52

标签: javascript jquery iframe

我的一个博客帖子中有一个来自外部网站的<iframe>元素,其中包含textarea。之后我已经添加了几个帖子。但是当我打开网站时,博客会向下滚动到<iframe>因为它拥有焦点。如何防止这种情况,以便在博客打开时,可以看到最新的帖子?

这就是我在博文中添加iframe的方式。

<iframe border="no" allowtransparency="true" height="500" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="some external site reference" width="100%">
</iframe>

仅供参考,博主拥有dynamic views模板。

我尝试将scrollTo()focus()用于最新的帖子标题。但它没有用。我发现,即使我在$(document).ready()内打印文章标题的数量,它也会返回0.页面完全加载后,如果我转到控制台并重新打印长度,那么它只会给出10.相当困惑关于博客如何处理其帖子。

<script>
    $(document).ready(function(){ 

        console.log( $('div.article-header').length ); // returns 0

    });
</script>

更新

看起来Blogger动态视图使用AJAX加载博客帖子。因此,在实际博客内容完全加载之前,会调用文件ready()。 &#39; Jeffery To&#39;下面给出了一个很好的解释:

prettyPrint() doesn't get called on page load

感谢。

2 个答案:

答案 0 :(得分:0)

博客标题中的tabindex = 1会不够?

或者添加?

$(function() {
    $("h1").first().focus()
});

H1是你的页面标题

[编辑]

不是博主将焦点放在这个textarea上,而是这个iframe中的代码。由于跨域脚本编写,防止此行为似乎是一个巨大的痛苦。

我的建议?通过用简单的超链接替换iframe来改变你的帖子。

答案 1 :(得分:0)

$('body').scrollTo('#foobar');