Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Ссылки в iframe открывать вне этого iframe (https://javascript.ru/forum/dom-window/37951-ssylki-v-iframe-otkryvat-vne-ehtogo-iframe.html)

norpe98 15.05.2013 10:33

Ссылки в iframe открывать вне этого iframe
 
Здравствуйте.

сайт на joomla

Есть каталог: http://www.stroy-technika.by/katalog-prodazhi

Хочу продублировать его здесь: http://www.stroy-technika.by/#sale (Споллер ПОЛНЫЙ КАТАЛОГ)

Вот таким кодом (взят отсюда): обрезаю все лишее, и вставляю визуально как нужно мне (поменял css верстку):
<style type="text/css">
#block1{
margin-left: -210px;
    margin-top: -274px;
    overflow: hidden;
    padding-left: 80px;
    width: 807px;
}
</style>
<script type="text/javascript">
    function f(){
        document.getElementById('block1').scrollTop = 200;
        document.getElementById('block1').scrollLeft = 50;
    }
</script>

<body onload="f()">

<div id="block1">
<iframe src="http://www.stroy-technika.by/katalog-prodazhi"  width="1024" height="1670" name="iframe1" scrolling="no"></iframe>
</div>

</body>


Однако теперь нужно, чтобы ссылки каталога внутри этого фрейма открывались не в нем, а в этом же окне браузера, как будто мы перешли отсюда http://www.stroy-technika.by/katalog-prodazhi в полный рост, а сейчас это происходит в области фрейма.

Помогите пожалуйста!

Deff 15.05.2013 11:15

norpe98,
Ссылки во фрейме должны быть вида
<a href="..." target="_top">...</a>

norpe98 15.05.2013 11:19

Цитата:

Сообщение от Deff (Сообщение 250591)
norpe98,
Ссылки во фрейме должны быть вида
<a href="..." target="_top">...</a>

а автоматически при выводе в iframe в коде вывода нельзя в них добавить?

так как ссылки в каталоге формируются автоматически в компоненте joomla, ну там скрипт какой обработки вставляемого блока или т.п. ?

Deff 15.05.2013 11:20

norpe98,
Ссылка на страницу со вставленным фреймом - есть ?
И есть ли возможность установить свой скрипт на странице http://www.stroy-technika.by/katalog-prodazhi

norpe98 15.05.2013 11:23

http://www.stroy-technika.by/#sale в сполере ПОЛНЫЙ КАТОЛОГ уже вставлен фрейм страницы .....katalog-prodazhi

И есть ли возможность установить свой скрипт на странице
конечно возможность есть

Deff 15.05.2013 11:38

Цитата:

Сообщение от norpe98
конечно возможность есть

Поставьте на странице с каталогом
<script type="text/javascript">
if(window.name=='iframe1'){
  jQuery(window).load(function(){
     jQuery('a').attr('target','_top');
  });
}
</script>

Зы: Имя фрейма - я бы выбрал более длинным и уникальным)в скрипте - оно идентично имени фрейма

norpe98 15.05.2013 12:04

все ок, вопрос решен, работает как надо, за ЗЫ спасибо, изменил

очень хорошо получилось.

danik.js 15.05.2013 12:06

Фреймы - зло. Хотя для говносайтов - самое оно :)

norpe98 15.05.2013 12:10

Если вы подскажите, как вывести копию компонента на joomla в нужном месте, при не работающем плагине Component in сontent и т.п., что бы все изменения в админке меняли и эту копию, и при этом не верстать около 100 элементов каталога вручную и опять верстать при любых изменениях буду вам благодарен.

ну а про ГС не вам решать... это как бы вежливо

Deff 15.05.2013 12:12

danik.js,
Зло есть безосновательное навязывание личного ЧСВ, без аргументов в конретике,
Затем - не уверен, что для оперативности Вы не строите говносайтов,
К примеру, тот жа флешь большинство проигрывают во фрейме, посколь embed чаще глючит,
Фрейм ко всему прочему, чаще более защищенней по политике безопасности - нежели вставка аяксом,
К примеру те же примеры JS в топиках сделаны почему то через фрейм, а не напрямую,
Так шо говорить огульно - Зло!

Deff 15.05.2013 12:25

Цитата:

Сообщение от norpe98
Если вы подскажите, как вывести копию компонента на joomla в

В данном вопросе, - нет опыта , ждите более опытных, либо спросить на сайтах joomla

norpe98 15.05.2013 12:32

в таких случаях отсылают на использование специального плагина, я о нем в курсе, но с нужным мне компонентом он не работает (с другими работает), а разработчик компонента не думаю, что будет решать эт у проблему.

В принципе, решение вопроса мне нравится.

Есть ли какие существенные минусы в том, что сделано сейчас через iframe? ведь альтернатива это полностью ручная верстка, которая статична к изменениям...

Deff 15.05.2013 12:36

Цитата:

Сообщение от norpe98
ведь альтернатива это полностью ручная верстка,

Отнюдь, можно подгружать страницу аяксом, но не уверен, что есть смысл
Страница то анонсно -единичная, данный каталог через фрейм тож грузится достаточно быстро, верстка под фрейм подготовлена, под аякс нужны доп-тесты - проверки под совместный стиль контента каталога и текущей страницы

danik.js 15.05.2013 17:04

Deff, даже не буду с тобой спорить. Ты уже давно показал свою некомпетентность в веб-разработке.
Что касается меня, то я даже за невысокую цену выполняю свою работу качественно, а не как попало, втыкая костыль за костылем.

И само собой есть ряд случаев, где фреймы - не зло. Нужно просто понимать где их нужно применять, а где - нет.

Кстати я вкурсе про способ отлова ресайза элемента без использования фрейма. Интересно?

norpe98, я не называл ваш сайт ГС. Это целиком зависит от вас. Я лишь подчеркнул что такие костыли из фреймов - удел ГС :)
Ну глуповато ведь звучит идея встроить через фрейм в сайт кусок этого же сайта.

Deff 16.05.2013 13:22

danik.js,
У Вас за пол-года - развился комплекс бога.
Знающий специалист работает не языком, а лучшими контрпримерами...

norpe98 16.05.2013 14:55

Цитата:

Сообщение от danik.js (Сообщение 250677)
Я лишь подчеркнул что такие костыли из фреймов - удел ГС :)
Ну глуповато ведь звучит идея встроить через фрейм в сайт кусок этого же сайта.

а вы сайт смотрели, суть задачи поняли? задача может звучит не проф. языком, поэтому лучше посмотреть на месте...

на самом деле предложите лучший контрпример для моей задачи

с учетом что это нужно мне, я не требую, просто если действительно особых вариантов для решения задачи нет, этот вариант рабочий, и мне нравится что получилось.


Часовой пояс GMT +3, время: 09:01.