Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.02.2010, 11:19
Интересующийся
Отправить личное сообщение для Lex4e Посмотреть профиль Найти все сообщения от Lex4e
 
Регистрация: 07.01.2010
Сообщений: 12

Некорректное отображение ссылок и бэкграундов в пунктах меню
Написал на js меню как таблицу, подменю - скрытые таблицы (style.display="none"). При нажатии пункта меню, есественно, появляется подменю (style.display="block"), но сначала появляются ссылки (<a>TextMenu</a>), а потом бэки. Как можно сделать, что б они подгружались одноврвеменно или хотя бы, что б сначало подгружались бэки. Не хочеться делать под каждый пункт отдельное изображение Зарнее благодарен
Ответить с цитированием
  #2 (permalink)  
Старый 12.02.2010, 13:38
Аватар для Tim
Tim Tim вне форума
Профессор
Отправить личное сообщение для Tim Посмотреть профиль Найти все сообщения от Tim
 
Регистрация: 05.06.2009
Сообщений: 1,703

а можно как-нибудь увидеть всё это безобразие?
__________________
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
Самые главные в жизни вещи - не вещи! (было написано на одном гараже =)
Ответить с цитированием
  #3 (permalink)  
Старый 12.02.2010, 16:39
Интересующийся
Отправить личное сообщение для Lex4e Посмотреть профиль Найти все сообщения от Lex4e
 
Регистрация: 07.01.2010
Сообщений: 12

Ну вот пожжалуйста полюбуйтесь )))

ml>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<style>

.menu {
background-image:url(images/menu_fon.gif);
background-repeat:no-repeat;
width:155px;
height:30px;
text-align:center;
margin-bottom:5px;
}

.podmenu {

background-image:url(images/menu_fon0.gif);
background-repeat:no-repeat;
width:155px;
height:30px;
text-align:center;
margin:0 5 5 20px;

}

.aMenu {

color:#326315;
font-weight:bold;
text-decoration: none;
margin: 5px;

}


#info {
display: none;
}


</style>
<script>
function visible(x) {
document.getElementById(x).style.display="block";
if (x!='info') {document.getElementById("info").style.display="no ne";}
}
</script>

</head>
<body>
<div>
<div class=menu id=1><a class=aMenu href='' onClick="visible('info'); return false;" onMouseMove="mouseOn(1);" onMouseOut="mouseOut(1);" >Інформація</a></div>

<div id="info">
<div class=podmenu id=11 ><a class=aMenu onMouseMove="mouseOn0(11);" onmouseOut="mouseOut0(11);" href=''>Новини</a></div>
<div class=podmenu id=12 ><a class=aMenu onMouseMove="mouseOn0(12);" onmouseOut="mouseOut0(12);" href=''>Статті</a></div>
<div class=podmenu id=13 ><a class=aMenu onMouseMove="mouseOn0(13);" onmouseOut="mouseOut0(13);" href='' >Документація</a></div>
</div>
</div>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 12.02.2010, 16:42
Интересующийся
Отправить личное сообщение для Lex4e Посмотреть профиль Найти все сообщения от Lex4e
 
Регистрация: 07.01.2010
Сообщений: 12

Только на локальном тормозов нет - Всё как по маслу. Вот в инете http://polbud2.hmarka.net/ есть(((
Ответить с цитированием
  #5 (permalink)  
Старый 13.02.2010, 04:06
Аватар для Tim
Tim Tim вне форума
Профессор
Отправить личное сообщение для Tim Посмотреть профиль Найти все сообщения от Tim
 
Регистрация: 05.06.2009
Сообщений: 1,703

http://polbud2.hmarka.net/danni.php
Цитата:
Warning: mysql_connect()
Ошибки MySQL выдают достаточно интересную информацию для хацкеров. Советую душить выводы этих сообщений исользуя символ @.

С картинками проблема в том, что когда свойство display установлено в none контент не загружается. Загрузка начинается только тогда, когда вы ставите его в block, отсюда и задержка. Если картинки будут достаточно тяжёлыми то на локальном сервере вы это тоже сможете почувствовать. Выходом может стать предварительная загрузка изображений:

// Создать объект изображения
var my_image = new Image(ширина, высота);

// Загрузить картинку в память браузера
my_image.src = "images/button.png";


function visible(x)
{
    document.getElementById("некий_элемент").style.backgroundImage = "url('" + my_image.src + "')";

    document.getElementById(x).style.display="block";

    if (x!='info')
    {
        document.getElementById("info").style.display="none";
    }
}


Вот, принцип примерно такой.
__________________
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
Самые главные в жизни вещи - не вещи! (было написано на одном гараже =)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск