Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Указать ссылкам на целевой фрейм, аттрибут target 
:(
    Опции темы
Palette
Дата 15.3.2005, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 9.3.2005

Репутация: нет
Всего: нет



Привет всем.

Есть такое вот неплохое меню:

Код

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Меню</title>
<style>
<!--
#foldheader{cursor:pointer;cursor:hand ; font-weight:bold ;
list-style-image:url(fold.gif)}
#foldinglist{list-style-image:url(list.gif)}
//-->
</style>
<script language="JavaScript1.2">
<!--

var head="display:''"
img1=new Image()
img1.src="fold.gif"
img2=new Image()
img2.src="open.gif"

var ns6=document.getElementById&&!document.all
var ie4=document.all&&navigator.userAgent.indexOf("Opera")==-1

function checkcontained(e){
var iscontained=0
cur=ns6? e.target : event.srcElement
i=0
if (cur.id=="foldheader")
iscontained=1
else
while (ns6&&cur.parentNode||(ie4&&cur.parentElement)){
if (cur.id=="foldheader"||cur.id=="foldinglist"){
iscontained=(cur.id=="foldheader")? 1 : 0
break
}
cur=ns6? cur.parentNode : cur.parentElement
}

if (iscontained){
var foldercontent=ns6? cur.nextSibling.nextSibling : cur.all.tags("UL")[0]
if (foldercontent.style.display=="none"){
foldercontent.style.display=""
cur.style.listStyleImage="url(open.gif)"
}
else{
foldercontent.style.display="none"
cur.style.listStyleImage="url(fold.gif)"
}
}
}

if (ie4||ns6)
document.onclick=checkcontained

//-->
</script>
</head>

<body>
<font face="Verdana">

<ul>
   <li id="foldheader">Меню 1</li>
   <ul id="foldinglist" style="display:none" style=&{head};>
      <li><a href="http://www.google.com.ua">строка 1</a></li>
      <li><a href="http://www.google.com.ua">строка 2</a></li>
      <li><a href="http://www.google.com.ua">строка 3</a></li>
   </ul>

   <li id="foldheader">Меню 2</li>
   <ul id="foldinglist" style="display:none" style=&{head};>
      <li><a href="http://punto.ru">строка 1</a></li>
      <li><a href="http://punto.ru">строка 2</a></li>
      <li><a href="http://punto.ru">строка 3</a></li>
   </ul>

   <li id="foldheader">Меню 3</li>
   <ul id="foldinglist" style="display:none" style=&{head};>
      <li><a href="http://www.yandex.ru">строка 1</a></li>
      <li><a href="http://www.yandex.ru">строка 2</a></li>
      <li id="foldheader">Подменю</li>
      <ul id="foldinglist" style="display:none" style=&{head};>
         <li><a href="http://www.yandex.ru">строка 1</a></li>
         <li><a href="http://www.yandex.ru">строка 2</a></li>
      </ul>
      <li><a href="http://www.yandex.ru">строка 1</a></li>
      <li><a href="http://www.google.com.ua">строка 2</a></li>
   </ul>
</ul>

</font>

<script language="JavaScript1.2">
<!--

function get_cookie(Name) {
//Get cookie routine by Shelley Powers 
  var search = Name + "="
  var returnvalue = "";
  if (document.cookie.length > 0) {
    offset = document.cookie.indexOf(search)
    // if cookie exists
    if (offset != -1) { 
      offset += search.length
      // set index of beginning of value
      end = document.cookie.indexOf(";", offset);
      // set index of end of cookie value
      if (end == -1) end = document.cookie.length;
      returnvalue=unescape(document.cookie.substring(offset, end))
      }
   }
  return returnvalue;
}

var foldercontentarray=new Array()
var c=0

if (ns6){
for (i=0;i<document.getElementsByTagName("UL").length;i++){
if (document.getElementsByTagName("UL")[i].id=="foldinglist"){
foldercontentarray[c]=document.getElementsByTagName("UL")[i]
c++
}
}
}

if (get_cookie(window.location.pathname) != ''){
  var openresults=get_cookie(window.location.pathname).split(" ")
  for (i=0 ; i < openresults.length ; i++){
    if (ns6){
    foldercontentarray[openresults[i]].style.display=''
    foldercontentarray[openresults[i]].previousSibling.previousSibling.style.listStyleImage="url(open.gif)"
    }
    else{
    foldinglist[openresults[i]].style.display=''
    document.all[foldinglist[openresults[i]].sourceIndex -1].style.listStyleImage="url(open.gif)"
    }
  }
}

if (ns6||ie4){
var nodelength=ns6? c-1 : foldinglist.length-1
var nodes=new Array(nodelength)
var openones=''
}

function checkit(){
  for (i=0 ; i <= nodelength ; i++){
    if ((ns6&&foldercontentarray[i].style.display=='')||(ie4&&foldinglist[i].style.display==''))
       openones=openones + " " + i
  }
  document.cookie=window.location.pathname+"="+openones
}

if (ns6||ie4)
window.onunload=checkit
//-->
</script>
</body>

</html>


Я запихнула его во фрейм.

Код

<TD WIDTH=385 HEIGHT=85  style="background-repeat:no-repeat">
&nbsp;<iframe src="index-menu.htm" frameborder="0" width="228" height="232" marginwidth="0" marginheight="0" scrolling="yes">

</iframe></TD>


Как выглядит, смотрите тут
http://www.smv.od.ua/index-menu-iframe.htm

При нажатии на ссылки меню, страницы открываются во фрейме.

Вопрос: Как заставить ссылки просто открывать страницы, а не загружать их во фрейм? Если можно, покажите, как будет выглядеть весь код, плиз.

PM MAIL   Вверх
GoodBoy
Дата 15.3.2005, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Главный джедай
****


Профиль
Группа: Модератор
Сообщений: 3886
Регистрация: 8.1.2003
Где: КМВ

Репутация: 2
Всего: 83



в <a href="...">...</a> прописать <a href="..." target=_top>...</a>


--------------------
Чем дальше в лес, тем толще партизаны...

Цитата(igorold @  1.5.2016,  17:40 Найти цитируемый пост)
Индейцы не обратили внимания на поток беженцев из Европы… Теперь они живут в резервациях. 
PM MAIL   Вверх
Aliance
Дата 15.3.2005, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Цитата(Palette @ 15.3.2005, 11:31)
var ie4=document.all&&navigator.userAgent.indexOf("Opera")==-1

По-моему, Опера индиф. себя как IE ( smile ), поэтому так ее наличие проверять нельзя. Нужно window.opera
PM MAIL WWW ICQ Skype   Вверх
Palette
Дата 15.3.2005, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 9.3.2005

Репутация: нет
Всего: нет



А я вообще ни че не поняла о чем Вы гутарите. Вы мне главное скажите, ставить то это
<a href="..." target=_top>...</a> где, и будет ли работать?

Вот тут ставить?

Код

<font face="Verdana">

<ul>
   <li id="foldheader">Меню 1</li>
   <ul id="foldinglist" style="display:none" style=&{head};>
      <li><a href="http://www.google.com.ua" target=_top>строка 1</a></li>
      <li><a href="http://www.google.com.ua">строка 2</a></li>
      <li><a href="http://www.google.com.ua">строка 3</a></li>
   </ul>


Правильно поняла?
И еще, там все в порядке с тем кодом, который я дала, никакой ошибки нет? У меня вроде работает, но я в этом не разбираюсь. Гляньте, плиз.
PM MAIL   Вверх
Aliance
Дата 15.3.2005, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Да, там, только во всех ссылках.

Ошибку одну я нашел (это только мельком пробедавшись по началу скрипта)...
Если нужно, чтоб работало в IE6 only - тогда без проблем...
Добавлено @ 17:35
И еще, когда ты используешь code - нажимай стрелочку и выбирай из списка что нужно. Много HTML`я ты обернула в JS...
PM MAIL WWW ICQ Skype   Вверх
Palette
Дата 16.3.2005, 19:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 9.3.2005

Репутация: нет
Всего: нет



GoodBoy Aliance

Спасибо за помощь

Цитата
Если нужно, чтоб работало в IE6 only - тогда без проблем...

А в других работать не будет? Ни как есть, ни во фрейме? Этого меню, вообще не будет видно?

Цитата
Ошибку одну я нашел (это только мельком пробедавшись по началу скрипта)...

Это что-то то серьезное? Или тут без разницы, если ошибка есть, это в любом случае серьезно, и может не работать?

Цитата
И еще, когда ты используешь code - нажимай стрелочку и выбирай из списка что нужно. Много HTML`я ты обернула в JS...

Упс… А я ее и не заметила. Это для каждого кода, который хочешь тут написать, надо выбирать свой параметр представления? Постараюсь не забывать.
PM MAIL   Вверх
Aliance
Дата 16.3.2005, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Цитата(Palette @ 16.3.2005, 19:34)
А в других работать не будет? Ни как есть, ни во фрейме? Этого меню, вообще не будет видно?

new Image() - поддерживается по-моему только IE

Цитата(Palette @ 16.3.2005, 19:34)
Это что-то то серьезное? Или тут без разницы, если ошибка есть, это в любом случае серьезно, и может не работать?

Я так понял, это для Оперы, ну так вот, так ее не определить... просто замени...

Цитата(Palette @ 16.3.2005, 19:34)
Это для каждого кода, который хочешь тут написать, надо выбирать свой параметр представления?

Да, для этого подсветка и создана :-)
PM MAIL WWW ICQ Skype   Вверх
Sardar
Дата 17.3.2005, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(Aliance @ 16.3.2005, 20:10)
new Image() - поддерживается по-моему только IE

Нет, всеми браузерами. Жаль что ничего кроме закачки сделать нельзя. А как хочется рисовать точки, картинки, линии и т.п. какая была бы мощь у JS... И ведь это не сложно реализовать smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0563 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.