Открыть ссылку в другом фрейме


Содержание

Открыть ссылку в другом фрейме

В HTML существует возможность разделить основное окно, в котором отображаются Web-странички, на несколько частей — фреймов. Фрейм, по сути, представляет собой окно, в которое загружается отдельная страничка. В результате — в окне окне браузера отображается сразу несколько страничек.

Фрейм — подокно, в которое загружается отдельная страничка.

Для того чтобы понять принцип работы с фреймами, выполняйте все предложенные упражнения.

? Упражнение 1. Создайте в своей папке новую папку FRAMES (например, D:\ IVANOVA \ FRAMES) и все следующие упражнения выполняйте в ней.

Разбиение окна браузера на фреймы реализуется следующим образом :

  • создаются отдельные html странички для каждого фрейма.

?Упражнение 2. Создайте три страницы, в которых будет написано всего по одному слову:name.htm, в которой напишите слово «name»;menu.htm, в которой напишите слово «menu»;content.htm, в которой напишите слово «content»;

  • создается HTML-файл (обычно это первая страничка сервера по имени index.htm)

?Упражнение 3. Создайте документ index.htmCтраничка с фреймами Обратите внимание на то, что тег BODY отсутствует, вместо него используется тегFRAMESET, содержащий описание внутренних фреймов:

Структура HTML-страницы с фреймами: описание заголовка первый фрейм второй фрейм
  • В документе index.htm указываеся сколько документов откроется одновременно в окне броузера, сколько места будет занимать каждый, каким образом они будут располагаться: можно разделить экран на несколько вертикальных или несколько горизонтальных фреймов.

Например, в документе index.htm документы name.htm, menu.htm, content.htm могут быть расположены:

Атрибуты тега FRAMESET: Cols и Rows

COLS — подразделяет экран на определенное количество вертикальных колонок. ROWS — подразделяет экран на определенное количество горизонтальных колонок. Размеры колонок перечисляются через запятую (сколько колонок, столько и размеров) и могут быть выражены: — в пикселах, — в процентах относительно размера окна, — в ( * ) долях между собой (символ * указывает на то, что все оставшееся место будет принадлежать данному фрейму; если указывается два или более фрэйма с описанием * (например COLS=*, 30%, *), то оставшееся пространство делится поровну между этими фрэймами). Атрибут тега FRAME SRC описывает адрес документа, который будет отображен внутри данного фрейма. Если этот атрибут отсутствует, то отображается пустой фрейм.

Открыть ссылку в другом фрейме

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

Помогите, пожалуйста.
Никак не могу найти такой скрипт.

1. Q-sd , 07.04.2001 19:54
Был у меня такой — надо посмотреть, где-то встречал!
2. RoNiS , 08.04.2001 00:17
А target не помогает уже? )
3. Tigro , 08.04.2001 07:21
Привет!

Дак вот я не нашёл такое горизонтальное меню с раскрывающимся списком подменю, чтобы в нём можно было бы указать target для другого фрейма.

Там обычно есть команда на Java-скрипте, например: top.location.href

пробовал менять эту команду на main.location.href (main — имя моего фрейма) — не помогает.

Вот я и спрашиваю у Вас: может кто-нибудь знает что нужно поменять, чтобы ссылки открывались в другом фрейме.

4. -=SAS=- , 08.04.2001 09:18
А попробуй в хедере твоего фрейма прописать так:
5. kka , 08.04.2001 13:46
top.main.location.href или top.frames[1].location.href
6. Qfall , 08.04.2001 20:06
Привет!

Посмотри, чего я сейчас накатал, и скажи, то или не то.

7. Tigro , 09.04.2001 15:36
Привет, всем!

Извините, что не сразу отвечаю — был в небольшой коммандировке.

Ссылки в HTML фреймах.

Можно сказать фреймы мы изучили, осталось дело за малым, научиться использовать ссылки. Если вы не только смотрели или двигали фреймы из предыдущих примеров, а нажимали на ссылки и если ваш браузер Опера, Хром или FireFox то у вас ничего не происходило, а в Интернет Ехсплорере открывался индексный файл в место наших ссылок, но теперь это уже не важно, т.к. мы и здесь наведем порядок.

Начнем редактировать наш файл navigatcia.html:

Я просто подставил имена файлов которые мы создали ранее, они все должны быть у вас в вашей учебной папке, а самую нижнюю ссылку я подставил на свою главную страницу. Теперь запустим наш файл frame.html и посмотрим что у нас получилось, покликаем по ссылкам.
А получилось у нас следующее, не зависимо какой у вас браузер все ссылки открываются в место навигации.

Как заставить ссылку открываться в нужном фрейме?.
target — атрибут знакомый нам из простых ссылок, но в фреймах его роль немного необычна. Добавим этот атрибут в файл navigatcia.html:

Значение атрибута target произвольное, вы можете написать другое слово на ваше усмотрение состоящее из букв и цифр.

Теперь осталось нам определить где будут открываться наши ссылки, для этого отредактируем наш файл frame.html

Для того чтобы определить фрейм нужно атрибуту name присвоить значение из атрибута target, как я и сделал в примере выше. По умолчанию будет загружаться файл kontent.html, а далее при нажатии любой нашей ссылки в место этого файла будет загружена нужная нам страница. А теперь просмотрим что получилось.
Нижнюю ссылку я поставил на свой сайт не просто так, в том случае если вы не просто просматриваете, а вдобавок учитесь по этому самоучителю хтмл и все коды минимум копируете и создаете файлы какие я указываю, то можно вообразить что у вас не просто папка на вашем компе, а настоящий сайт и в этом случае ссылка на мой сайт является внешней для вашего сайта, и я думаю нет смысла запускать внешние сайты в вашем фрейме. Для того чтобы ссылка на внешний сайт открылась на все окно, а не в фрейме нужно атрибут target использовать с значением «_top», кстати, это значение для обычных(не фреймовых) ссылок по умолчанию. Ну а если вы не хотите терять посетителя и чтобы внешний сайт открывался в новой вкладке(окне) используем уже знакомый нам target=»_blank».

К большому сожалению не все браузеры поддерживают фреймы, они просто не знают тег frameset и не умеют вставлять объекты, а знают только body, в этом случае они просто проигнорируют теги которые не поддерживают и загрузят пустой экран, потому что самого текста в файле frame.html нет. Для таких случаев существует тег контейнер . Этот тег вставляется как нижний фрейм:

1)браузер поддерживает фреймы и они включены, в этом случае текст в теге NOFRAMES на дисплее не отобразится.
2)браузер поддерживает фреймы но они отключены пользователем, в этом случае выведется только текст в теге NOFRAMES.
3)браузер не поддерживает фреймы, в этом случае как и в предыдущем выведется только текст в теге NOFRAMES.


Фреймы это плохо. потому что:
1)Не все браузеры их поддерживают и их можно отключить.
2)Поисковые системы часто(почти всегда) не правильно индексируют фреймы, они индексируют только «рамки» в отдельности, а сам файл в нашем случае frame.html просто опустить или выкинуть из поиска, т.к. он не содержит контента(текста) и с точки зрения поисковых систем не представляет особой важности для посетителей.
3)Поисковые системы могут выдать в результатах поиска только страницы с контентом и если в такую рамку попадет пользователь то он не сможет дальше двигаться по вашему сайту. Выход в данном случае только один, ставить в каждом фрейме ссылку на главную страницу.
4)Первые сайты выкладываются на бесплатные хостинги, но платой за хостинг является реклама которую хостинг-провайдер размещает на таких сайтах. И эта реклама загружается не в одной рамке, а сразу в каждой.
5)Таких причин отказаться от использования фреймов десятки.

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

Возможно вы ни когда не найдете применения для фреймов, но знать о них нужно. По фреймам у меня все.

Поиск по тегам:
Список всех тегов
А вы знаете что в HTML 5 появился новый тег-контейнер HGROUP, который позволяет групировать внутри себя теги H1, H2, H3, H4, H5 и H6?

Открыть ссылку в другом фрейме

Главная | Оглавление | Словарь
В этой главе мы поговорим о том, что становиться проблемой для каждого человека, начинающего осваивать фреймы.

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

Для начала, господа, познакомьтесь с новым параметром тэга — name. Пустим name в дело:

Параметр name задает имя для фрейма (в нашем случае для того, который содержит документ content.html).

Имя фрейма может быть в дальнейшем использовано для ссылки на него из других документов (фреймов), с помощью параметра тэга target (target=»имя_фрейма»).

Как использовать OnMouseOver, чтобы открыть ссылку в другом фрейме?

Для фрейма, я хочу, чтобы открыть ссылку со страницы A кадра с помощью OnMouseOver и открыть его в другом кадре? при наведении курсора мыши на ссылку из кадра, он откроет страницу на B кадре. Дайте подсказку.

Когда я работал с она занимает много времени назад (семь или более лет).

Потому что вы не размещать HTML sourcode: — |, я создал теоретическую ситуацию:

Sin моего теоретического файла «myNewInternalPage.html» вы должны instert вызова методы

Примечание: frame не approiate , чтобы показать внешнее содержимое. Вот почему iframe существует.

Обновить:

После упорной борьбы с ОП я получил что-то своими руками. Вот решение:

Первый: Заменить старый Javascript код от «nullRand ()» с новым

Второе: Modyfiy тэга -где потоки радио является listed- следующим образом:

Так оно и должно работать. В моих глазах вы должны думать о новой концепции для вашей задачи.

Фреймы

Фреймы — это HTML-элементы, позволяющие разделить окно веб-браузера на несколько независимых окон, в каждое из которых можно загрузить отдельный HTML-документ. Каждое такое окно (фрейм) может иметь собственные полосы прокрутки и функционировать независимо от других независимых окон либо наоборот управлять их содержанием. Они могут применяться для организации постоянно находящегося в одном окне меню, в то время как в другом окне располагается непосредственно сама информация. Пользователи могут обращаться к меню в любой момент, и им не нужно возвращаться к предыдущей странице, чтобы выбрать другой пункт меню. Применение фреймов позволит вам «закрепить» в окне браузера изображения или другие неподвижные по замыслу элементы интерфейса, в то время как остальная часть страницы будет прокручиваться во фрейме.
Однако, стоит отметить, что в наши дни фреймы считаются устаревшим средством, а сайты с фреймами теперь считаются несолидными, так как профессиональные веб-мастера никогда не используют фреймы в своих проектах. С фреймами связан целый ряд печально известных проблем. Они, например, сбивают с толку поисковые машины, поскольку на страницах, которые содержат контент, нет ссылок на другие документы. Если вы хотите получать посетителей с поисковых систем, забудьте о фреймах. Понравившуюся страницу пользователю невозможно поместить в раздел закладки браузера, так как фреймы скрывают адрес страницы, на которой он находится, и всегда показывают только адрес веб-сайта. По этой причине они создают проблемы для браузеров при отслеживании хронологии и еще они не слишком приспособлены для разных размеров экранов и мобильных устройств.
Несмотря на то, что проекты с фреймами встречаются во всемирной паутине все реже, изучение HTML было бы неполным без рассмотрения темы о фреймах. У фреймов наряду с недостатками есть и некоторые достоинства, которые не позволяют отбросить эту технологию как бесперспективную.

Создание фреймов

Структура HTML-документа с фреймами внешне очень напоминает формат обычного HTML-документа. Как и в обычном HTML-документе, весь код помещен между парными тегами и , а в контейнере располагаются заголовки. Основное отличие документа с фреймами от обычного HTML-документа — у документа с фреймами вместо тега применяется парный тег (от англ. frame set – набор фреймов).
В следующем примере приведена структура HTML-документа с фреймами:

Пример: Структура HTML-документа с фреймами

Информация:
frame_left

В приведенном примере страница содержит три области, в каждую из которых первоначально загружаются HTML-документы frame_top.html, frame_left.html и frame_right.html. Помимо HTML-документов, фрейм может содержать и графику. Для этого необходимо указать адрес соответствующего изображения в атрибуте src, например src=»http://wm-school.ru/html/image.gif». Обратите внимание, что элемент используется без закрывающего тега.
Внутри контейнера могут содержаться только теги или другой набор фреймов, охваченный тегами и .
Тег имеет следующие атрибуты:

  • rows — описывает разбиение страницы на строки:
  • cols — описывает разбиение страницы на столбцы:

Области, полученные в результате такого разбиения страницы, и будут являться фреймами. Отсутствие этих атрибутов определяет один фрейм, который займет все окно браузера.

В значении атрибутов rows и cols необходимо указывать не количество строк или столбцов, а значение ширины и высоты фреймов. Все значения в списке разделяются запятыми. Размеры могут быть указаны в абсолютных единицах (в пикселах) или в процентах:

  • cols=»20%, 80%» — окно браузера разбивается на две колонки с помощью атрибута cols, левая колонка занимает 20%, а правая 80% окна браузера.
  • rows=»100, *» окно браузера разбивается на два горизонтальных окна с помощью атрибута rows, верхнее окно занимает 100 пикселов, а нижнее — оставшееся пространство, заданное символом звездочки.

Как видно из данного примера, контейнер с атрибутом rows вначале создает два горизонтальных фрейма, а вместо второго фрейма подставляется еще один , который разбивает нижний горизонтальный фрейм на две колонки с помощью атрибута cols, левая колонка занимает занимает 20%, а правая 80% окна браузера.
Если браузер не поддерживает фреймы, то в окне будет отображен текст, расположенный между тегами и . Все, что находится между тегами и , игнорируется браузерами, поддерживающими фреймы. Таким образом разработчику нужно написать код, дублирующий содержимое фреймов другими средствами, и поместить этот код в контейнер , тогда все пользователи смогут увидеть его веб-страницу.
Как уже отмечалось, для вставки в документ отдельного фрейма служит непарный тег . Атрибут src задает документ, который должен отображаться внутри данного фрейма, например: . Если атрибут src отсутствует, отображается пустой фрейм.

Границы или пространство между фреймами

По умолчанию, браузер отображает серую и, как правило, в виде трехмерной линии границу между фреймами, с помощью которой посетители могут регулировать размер фрейма.
Границей фрейма можно управлять, как и любыми другими элементами фрейма. Для этого существует несколько атрибутов элемента , позволяющих настраивать границы фреймов. Толщина линии границы определяется атрибутом border. По умолчанию значение толщины границы равно пяти.
Чтобы скрыть границу фрейма, необходимо либо указать значение ширины границы равным нулю, либо присвоить значение «no» или «0» атрибуту frameborder. Атрибут frameborder может принимать только два противоположных значения. Если значение атрибута frameborder равно «yes» или «1», то граница фреймов будет отображаться, а если «0» или «no», то нет. Учтите, что значения атрибута frameborder различаются для разных браузеров. Чтобы решить эту проблему используйте дважды атрибут frameborder, а для некоторых браузеров требуется еще добавить атрибут framespacing со значением «0»:

В следующем примере убираем границу между фреймами:

Таргетинг ссылок в HTML-фреймах и фреймах


Откройте ссылки там, где вы хотите их

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

Вы можете присвоить своим фреймам уникальное имя с атрибутом, а затем указать ссылки на этот фрейм с идентификатором в качестве значения атрибута target :

Если вы добавите цель к идентификатору, который не существует в текущем сеансе браузера, откроется ссылка в новом окне браузера с этим именем. После первого раза все ссылки, которые указывают на указанную цель, откроются в том же новом окне.

Но если вы не хотите называть каждое окно или каждый кадр идентификатором, вы все равно можете настроить таргетинг на некоторые конкретные окна, не нуждаясь в именованном окне или кадре. Они называются стандартными целями.

Четыре целевых ключевых слова

Есть четыре целевых ключевых слова, которые не требуют именованного фрейма. Эти ключевые слова позволяют открывать ссылки в определенных областях окна веб-браузера, которые могут не иметь идентификатора, связанного с ними. Это цели, которые распознают веб-браузеры:

  • _self
    • Это цель по умолчанию для любого тега привязки. Если вы не установите атрибут target или используете эту цель, ссылка откроется в том же окне или фрейме, в котором находится ссылка.
  • _parent
    • Iframes встроены в веб-страницы. И вы можете встроить iframe на страницу, которая находится внутри другого iframe на другой веб-странице. Если вы установите для атрибута target значение _parent , ссылка откроется на веб-странице, содержащей фрейм iframe.
  • _top
    • В большинстве ситуаций с iframes эта цель будет открывать ссылки так же, как цель _parent . Но если внутри IFRAME есть IFRAME , цель _top открывает ссылки в окне самого высокого уровня в серии, удаляя все фреймы.
  • _blank
    • Это наиболее часто используемая цель — она ​​открывает ссылку в совершенно новом окне, похожем на всплывающее окно.

Как выбрать названия ваших фреймов

Когда вы создаете веб-страницу с iframes, хорошей идеей будет дать каждому конкретное имя. Это помогает вам вспомнить, для чего они предназначены, и позволяет отправлять ссылки на эти конкретные кадры.

Мне нравится называть свои фреймы для того, для чего они. Например:

Использование HTML-фреймов с целями

HTML5 делает фреймы и наборы фреймов устаревшими, но если вы все еще используете HTML 4.01, вы можете нацеливать определенные фреймы точно так же, как и на фреймы. Вы даете имена фреймов с атрибутом id :

Затем, когда ссылка в другом кадре (или окне) имеет ту же цель, ссылка откроется в этом кадре:

Четыре целевых ключевых слова также работают с фреймами. _parent открывается во вложенном фрейме, _self открывается в том же фрейме, _top открывается в том же окне, но за пределами набора фреймов, и _blank открывается в новом окне или вкладке (в зависимости от браузера).

Установка цели по умолчанию

Вы также можете установить цель по умолчанию на своих веб-страницах, используя элемент. Вы устанавливаете атрибут target на имя iframe (или фрейма в HTML 4.01), в котором вы хотите открыть все ссылки. Вы также можете установить цели по умолчанию для одного из четырех целевых ключевых слов. Вот как написать цель по умолчанию для страницы:

Элемент принадлежит в HEAD вашего документа. Это пустой элемент, поэтому в XHTML вы бы включили закрывающую косую черту:

Как открыть ссылку во фрейме?

На сайте форма отправляется через аякс. После отправки формы нужно во фрейме открыть ссылку.

Делаю следующим образом:

framename — имя фрейма. Но ссылка во фрейме не открывается. Как можно реализовать?

1 ответ 1

Всё ещё ищете ответ? Посмотрите другие вопросы с метками html javascript или задайте свой вопрос.

Похожие

Подписаться на ленту

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2020 Stack Exchange Inc; пользовательское содержимое попадает под действие лицензии cc by-sa 4.0 с указанием ссылки на источник. rev 2020.11.12.35408

Ссылки во фреймах


Рекомендованные сообщения

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Войти

Уже зарегистрированы? Войдите здесь.

Похожие публикации

Всем привет. Столкнулся с такой необъяснимой проблемой:
Имеется страница на которой есть текстовые инпуты и кнопка, которая открывает фрейм с другими инпутами.
Имеется userscript, которые реализует функционал виртуальной клавиатуры http://userscripts-mirror.org/scripts/show/10974
Он работает на всех страницах в яндексе, в гугле, в инпутах на моём сайте, но не работает в инпутах внутри открывающегося фрейма
Почему внутри фрейма может не выполняться userscript? В консоле браузера нет ни каких ошибок и вызова юзерскрипта.

Так же интересуют альтернативные варианты создания(подключения) виртуальной клавиатуры внутри фрейма с чужим сайтом.

Не могу понять, как убрать чёрные полосы по бокам видео.
Вот скриншот
А вот сам код :

Таргетинг ссылок в HTML-фреймах и фреймах

Откройте ссылки там, где вы хотите их

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

Вы можете присвоить своим фреймам уникальное имя с атрибутом, а затем указать ссылки на этот фрейм с идентификатором в качестве значения атрибута target :

Если вы добавите цель к идентификатору, который не существует в текущем сеансе браузера, откроется ссылка в новом окне браузера с этим именем. После первого раза все ссылки, которые указывают на указанную цель, откроются в том же новом окне.

Но если вы не хотите называть каждое окно или каждый кадр идентификатором, вы все равно можете настроить таргетинг на некоторые конкретные окна, не нуждаясь в именованном окне или кадре. Они называются стандартными целями.

Четыре целевых ключевых слова

Есть четыре целевых ключевых слова, которые не требуют именованного фрейма. Эти ключевые слова позволяют открывать ссылки в определенных областях окна веб-браузера, которые могут не иметь идентификатора, связанного с ними. Это цели, которые распознают веб-браузеры:

  • _self
    • Это цель по умолчанию для любого тега привязки. Если вы не установите атрибут target или используете эту цель, ссылка откроется в том же окне или фрейме, в котором находится ссылка.
  • _parent
    • Iframes встроены в веб-страницы. И вы можете встроить iframe на страницу, которая находится внутри другого iframe на другой веб-странице. Если вы установите для атрибута target значение _parent , ссылка откроется на веб-странице, содержащей фрейм iframe.
  • _top
    • В большинстве ситуаций с iframes эта цель будет открывать ссылки так же, как цель _parent . Но если внутри IFRAME есть IFRAME , цель _top открывает ссылки в окне самого высокого уровня в серии, удаляя все фреймы.
  • _blank
    • Это наиболее часто используемая цель — она ​​открывает ссылку в совершенно новом окне, похожем на всплывающее окно.

Как выбрать названия ваших фреймов

Когда вы создаете веб-страницу с iframes, хорошей идеей будет дать каждому конкретное имя. Это помогает вам вспомнить, для чего они предназначены, и позволяет отправлять ссылки на эти конкретные кадры.

Мне нравится называть свои фреймы для того, для чего они. Например:

Использование HTML-фреймов с целями

HTML5 делает фреймы и наборы фреймов устаревшими, но если вы все еще используете HTML 4.01, вы можете нацеливать определенные фреймы точно так же, как и на фреймы. Вы даете имена фреймов с атрибутом id :

Затем, когда ссылка в другом кадре (или окне) имеет ту же цель, ссылка откроется в этом кадре:

Четыре целевых ключевых слова также работают с фреймами. _parent открывается во вложенном фрейме, _self открывается в том же фрейме, _top открывается в том же окне, но за пределами набора фреймов, и _blank открывается в новом окне или вкладке (в зависимости от браузера).

Установка цели по умолчанию

Вы также можете установить цель по умолчанию на своих веб-страницах, используя элемент. Вы устанавливаете атрибут target на имя iframe (или фрейма в HTML 4.01), в котором вы хотите открыть все ссылки. Вы также можете установить цели по умолчанию для одного из четырех целевых ключевых слов. Вот как написать цель по умолчанию для страницы:

Элемент принадлежит в HEAD вашего документа. Это пустой элемент, поэтому в XHTML вы бы включили закрывающую косую черту:

Илон Маск рекомендует:  Шаблоны сайтов на языке html
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL