Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Работа над сайтом > DHTML/JS/CSS

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 07.07.2004, 14:48
getaka вне форума Посмотреть профиль Отправить личное сообщение для getaka Посетить домашнюю страницу getaka Найти все сообщения от getaka
  № 1  
getaka
 
Аватар для getaka

Регистрация: Aug 2003
Адрес: Казань
Сообщений: 63
По умолчанию Сползающий слой. Хочу.

Друзья, кто знает Java скрипт, который управлял был слоем <div> таким образом, чтобы при скролинге страницы этот слой медленно сползал на свою абсолютную по отношению к окну позицию. Я видел у кого-то такие сползающие менюшки. Подскажите, пожалуйста.

Старый 07.07.2004, 15:35
kazakov_gin вне форума Посмотреть профиль Найти все сообщения от kazakov_gin
  № 2  
kazakov_gin
 
Аватар для kazakov_gin

Регистрация: Dec 2003
Сообщений: 347
На скрипт, писал не я, и может быть что-нибудь лишнее , так что сам разбирайся
Код:
<style>
#divBottom{position:absolute; font-family:arial,helvetica; height:20; width:100; font-size:12pt; font-weight:bold} 
</style>
<script>
function exit(){close()}
var gright=170
var gbottom=40
var n = (document.layers) ? 1:0;
var ie = (document.all) ? 1:0;
function makeObj(obj,nest){
nest=(!nest) ? '':'document.'+nest+'.'
this.css=(n) ? eval(nest+'document.'+obj):eval(obj+'.style')
this.moveIt=b_moveIt;
}
function b_moveIt(x,y){
this.x=x; this.y=y
   this.css.left=this.x
this.css.top=this.y
}
var pageWidth,pageHeight
function geoInit(){
oTest=new makeObj('divBottom')
pageWidth=(ie)?document.body.offsetWidth-4:innerWidth;
pageHeight=(ie)?document.body.offsetHeight-2:innerHeight;
checkIt()
onresize=resized
if(ie) window.onscroll=checkIt;
}
function checkIt(){
if(ie) oTest.moveIt(document.body.scrollLeft +pageWidth-gright,document.body.scrollTop+pageHeight-gbottom)
else if(n){
oTest.moveIt(window.pageXOffset+pageWidth-gright, window.pageYOffset+pageHeight-gbottom)
setTimeout('checkIt()',20)
}
}
function resized(){
pageWidth=(ie)?document.body.offsetWidth-4:innerWidth;
pageHeight=(ie)?document.body.offsetHeight-2:innerHeight;
if(ie) checkIt()
}
onload=geoInit;
if(n || ie) document.write('<div id="divBottom"><a href="#begin" onClick="javascript:exit()">???????</a></div>')
</script>
__________________
[GIN]

Старый 07.07.2004, 22:09
getaka вне форума Посмотреть профиль Отправить личное сообщение для getaka Посетить домашнюю страницу getaka Найти все сообщения от getaka
  № 3  
getaka
 
Аватар для getaka

Регистрация: Aug 2003
Адрес: Казань
Сообщений: 63
Ладненько, спасибочки. Будем посмотреть.

Старый 09.07.2004, 12:25
getaka вне форума Посмотреть профиль Отправить личное сообщение для getaka Посетить домашнюю страницу getaka Найти все сообщения от getaka
  № 4  
getaka
 
Аватар для getaka

Регистрация: Aug 2003
Адрес: Казань
Сообщений: 63
Ещё раз спасибочки большое. Скрипт проверил, работает! Убрал лишнее function exit() последную строку убрал и сам создал <div>. И ещё кое какую мелочь подправил с переменными. Спасибо!!!

Старый 09.07.2004, 12:53
Илья К вне форума Посмотреть профиль Отправить личное сообщение для Илья К Найти все сообщения от Илья К
  № 5  
Илья К

Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
По умолчанию Для особо ленивых

Цитата:
Оригинал написал(а) getaka
Ещё раз спасибочки большое. Скрипт проверил, работает! Убрал лишнее function exit() последную строку убрал и сам создал <div>. И ещё кое какую мелочь подправил с переменными. Спасибо!!!
Слушай, если не тудно, брось, плиз, очищенный вариант.

Старый 10.07.2004, 14:43
getaka вне форума Посмотреть профиль Отправить личное сообщение для getaka Посетить домашнюю страницу getaka Найти все сообщения от getaka
  № 6  
getaka
 
Аватар для getaka

Регистрация: Aug 2003
Адрес: Казань
Сообщений: 63
1) Создайте в <body> слой: <div id="divBottom" ></div>
------------------------------------------------------
2) Задайте ему в <head> любой стиль, например:

<style>
#divBottom {
background-color: #990000;
тыры-пыры...ля-ля-ля.
}
</style>
-------------------------------------------------------
3) Поместите в <head> следующий скрипт:

<SCRIPT LANGUAGE=JavaScript>
<!--
//Переменные gright и gbottom задают позицию слоя относительно верхнего левого угла окна:
//(В старом скрипте они задавали позицию относительно нижнего правого угла )
//Далее в коментариях я покажу, где сделал небольшие изменения.
var gright=400
var gbottom=100
var n = (document.layers) ? 1:0;
var ie = (document.all) ? 1:0;
function makeObj(obj,nest){
nest=(!nest) ? '':'document.'+nest+'.'
this.css=(n) ? eval(nest+'document.'+obj):eval(obj+'.style')
this.moveIt=b_moveIt;
}
function b_moveIt(x,y){
this.x=x; this.y=y
this.css.left=this.x
this.css.top=this.y
}
var pageWidth,pageHeight
function geoInit(){
oTest=new makeObj('divBottom')
pageWidth=(ie)?document.body.offsetWidth-4:innerWidth;
pageHeight=(ie)?document.body.offsetHeight-2:innerHeight;
checkIt()
onresize=resized
if(ie) window.onscroll=checkIt;
}
function checkIt(){
//Вот тут я кое что изменил. Кому надо позиционировать слой относительно нижнего правого угла
//оставтье скрипт в этом месте как в старом варианте:
if(ie) oTest.moveIt(document.body.scrollLeft +gright,document.body.scrollTop+gbottom)
else if(n){
oTest.moveIt(window.pageXOffset+gright, window.pageYOffset+gbottom)
setTimeout('checkIt()',20)
}
}
function resized(){
pageWidth=(ie)?document.body.offsetWidth-4:innerWidth;
pageHeight=(ie)?document.body.offsetHeight-2:innerHeight;
if(ie) checkIt()
}
onload=geoInit;
//-->
</SCRIPT>
-------------------------------
4) Всё!!! Счастливого запуска!

Старый 10.07.2004, 21:21
Илья К вне форума Посмотреть профиль Отправить личное сообщение для Илья К Найти все сообщения от Илья К
  № 7  
Илья К

Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
ПАСИБА!!!

Старый 10.07.2004, 23:27
getaka вне форума Посмотреть профиль Отправить личное сообщение для getaka Посетить домашнюю страницу getaka Найти все сообщения от getaka
  № 8  
getaka
 
Аватар для getaka

Регистрация: Aug 2003
Адрес: Казань
Сообщений: 63
Друзья, всё это прекрасно! Но я вот о чём подумал. А есть ли у кого скрипт, который работает чуть-чуть иначе. А именно, слой спускается не сразу при скролинге, а обладая инерцией, ждёт когда пользователь прекратит скролинг страницы и только после этого слой медленно спускается на свою позицию. А?

Старый 15.07.2004, 15:12
Ируся вне форума Посмотреть профиль Отправить личное сообщение для Ируся Посетить домашнюю страницу Ируся Найти все сообщения от Ируся
  № 9  
Ируся

Регистрация: Jul 2004
Адрес: Украина Одесса
Сообщений: 2
По умолчанию Re: Сползающий слой. Хочу.

Цитата:
Оригинал написал(а) getaka
Друзья, кто знает Java скрипт, который управлял был слоем <div> таким образом, чтобы при скролинге страницы этот слой медленно сползал на свою абсолютную по отношению к окну позицию. Я видел у кого-то такие сползающие менюшки. Подскажите, пожалуйста.

Создать новую тему   Часовой пояс GMT +4, время: 13:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 13:32.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.