target = "_ top" эмуляция с использованием JavaScript - PullRequest
1 голос
/ 31 марта 2010

Предположим, у нас есть набор фреймов с 2 фреймами, один из которых представляет собой крошечный горизонтальный заголовок, а второй - это своего рода "контентный" фрейм со сторонней HTML-страницей внутри. Когда пользователь нажимает на какую-то ссылку внутри фрейма «контент», вся страница (фрейм) должна быть перезагружена с этой ссылкой, то же самое поведение, если фрейм «контент» имеет атрибут «target = _top». Как это сделать с помощью JS?

Основная проблема здесь в том, что я не могу редактировать html страницы «контента».

Ответы [ 2 ]

0 голосов
/ 31 марта 2010

Вот мое быстрое решение:

<html>
<head>
<script type="text/javascript">
    function load(){
        // set target="_top" to reload whole frame
        var links = this.content.document.getElementsByTagName("a");
        for(var i = 0; i < links.length; i++){
            var link = links[i];
            link.target="_top";
        }
    }
</script>
</head>

<frameset rows="50,*" frameborder="0" onload="load()">
   <frame src="/header.html" scrolling="no">
   <frame src="/content.html" name="content">
</frameset> 

</html>
0 голосов
/ 31 марта 2010

Попробуйте установить window.location для целевого URL.

...