Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 31.07.2016, 11:59
Интересующийся
Отправить личное сообщение для donkey Посмотреть профиль Найти все сообщения от donkey
 
Регистрация: 29.07.2016
Сообщений: 16

Благодарю вас! Собственно я и попросил помочь со скриптом, а не с позиционированием..
Ответить с цитированием
  #12 (permalink)  
Старый 31.07.2016, 12:07
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

То есть никому не известно как оно должно шевелиться, сценарий пиши и все.

<html><head>
<style>

html{width:100%;height:100%;position:fixed;overflow:hidden;}
body{margin:20px;}

#x {
position: absolute; background-color: blue; 

	width: 100; /* меняй размеры */
	height: 100;

	top: 0; /* меняй координаты */
	left: 0;

	z-index: 10; /* меняй ось z */

}

/* во всех остальных квадратах и "сшивай" блеать как угодно */

#xx {
position: absolute; background-color: red; 

	width: 100; 
	height: 100;

	top: 50; 
	left:50; 

	z-index: 2; 

}

#xxx {
position: absolute; background-color: yellow; 

	width: 100; 
	height: 100; 

	top: 100; 
	left: 100; 

	z-index: 3; 


}
</style>
</head>
<body>



<div style="position:relative;">

	<div id="x">1</div>
	<div id="xx">2</div>
	<div id="xxx">3</div>

</div>

<script>

var obj={
	x:null,
	xx:null,
	xxx:null,
};

for(var id in obj)
	obj[id]=document.getElementById(id);
	
	
var cnt=0,inc=1,step=5,min=1,max=50,left;

t = setInterval(function(){

	cnt+=inc;
	left=cnt*step;
	if(cnt>max || cnt<min) inc=-inc;
	
	obj.x.style.left=left;
	obj.xx.style.top=left;
	
	obj.xxx.style.left=left;
	obj.xxx.style.top=left;
	
	

},100);

</script>

</body>
</html>
Ответить с цитированием
  #13 (permalink)  
Старый 31.07.2016, 12:09
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Сообщение от donkey
позиционированием
Сначала надо сделать позиционирование, чтобы все работало ожидаемо, а потом уже остается только написать скрипт согласно сценария анимации. Бери и пиши, или пиши сценарий тут.
Ответить с цитированием
  #14 (permalink)  
Старый 01.08.2016, 09:57
Интересующийся
Отправить личное сообщение для donkey Посмотреть профиль Найти все сообщения от donkey
 
Регистрация: 29.07.2016
Сообщений: 16

Не очень понятно, что вы подразумеваете под словом сценарий, но я постараюсь объяснить..

У меня есть панель, назовем ее условно "меню" (x) в ней находится несколько привязанных (сшитых с ней, если вам так угодно) объектов. Этот объект, с кучей объектов внутри гипотетически находится над двумя или даже тремя слоями (xx), которые маскируют, скрывают, еще один слой, частично спрятанный за экраном (xxx)..

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

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

Если возможно написать хоть примерно, чтобы хоть-что-нибудь двигалось, тогда мне возможно будет легче понять.. Я стараюсь понять, поверьте..

Последний раз редактировалось donkey, 01.08.2016 в 10:01.
Ответить с цитированием
  #15 (permalink)  
Старый 01.08.2016, 10:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

Сообщение от donkey
Решения, которые я находил в интернете могут работать лишь с одним слоем,
покажите пример, чтобы хоть понять о чём вы говорите
Ответить с цитированием
  #16 (permalink)  
Старый 01.08.2016, 10:44
Интересующийся
Отправить личное сообщение для donkey Посмотреть профиль Найти все сообщения от donkey
 
Регистрация: 29.07.2016
Сообщений: 16

warren buffet, нарисовал примерный сценарий:

<!doctype html public "-//W3C//DTD HTML 3.2 Final//EN"> 
<html>
<head> 
<style> 
#x {z-index: -1; position: absolute; background-color: blue; right: 15; top:15; width: 185; height: 185; text-align: center}
#xx {z-index: -2; position: absolute; background-color: red; right: 0; top:10; width: 50; height: 200;}
#xxx {z-index: -3; position: absolute; background-color: yellow; right: -300; top:15; width: 500; height: 185; border: 1px solid black; text-align: right}
</style>
</head>
<body> 

<a href="#">onClick</a>

<div style="position: fixed; top: 25%; left: 25%; width: 400; Height:300; border: 1px solid #000000;">
&nbsp;[my screen]

<div id="x">That DIV must turn left wih (xxx)</div>
<div id="xx"></div>
<div id="xxx">That DIV must turn left onClick</div>

</div>

</body></html>

рони, при помощи transition и много решений со скриптами..

Последний раз редактировалось donkey, 01.08.2016 в 17:08.
Ответить с цитированием
  #17 (permalink)  
Старый 01.08.2016, 11:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

donkey,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
  #18 (permalink)  
Старый 01.08.2016, 13:58
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

donkey,
Если я правильно понял, то (без анимации) должно получиться что-то вроде
<!doctype html public "-//W3C//DTD HTML 3.2 Final//EN"> 
<html> 
<head> 
<style> 
#x {z-index: -1; position: absolute; background-color: blue; right: 15; top:15; width: 185; height: 185; text-align: center}
#xx {z-index: -2; position: absolute; background-color: red; right: 0; top:10; width: 50; height: 200;}
#xxx {z-index: -3; position: absolute; background-color: yellow; right: -300; top:15; width: 500; height: 185; border: 1px solid black; text-align: right}
</style> 

</head> 
<body> 
<div style="position: fixed; top: 25%; left: 25%; width: 400; Height:300; border: 1px solid #000000;">
&nbsp;[my screen]
<div id="x">That DIV must turn left wih (xxx)</div>
<div id="xx"></div>
<div id="xxx">That DIV must turn left onClick</div>

</div>
<a href="#">onClick</a>
<script>
   var a = document.querySelector("a"),
        x = document.getElementById("x"),
        xxx = document.getElementById("xxx");
   a.onclick = function() {
         x.style.left = '0px';
         xxx.style.left =  getComputedStyle(x, "").getPropertyValue('width');
   }
</script>
</body> 
</html>
Ответить с цитированием
  #19 (permalink)  
Старый 01.08.2016, 14:45
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

<!doctype html public "-//W3C//DTD HTML 3.2 Final//EN"> 
<html> 
<head> 
<style> 
#x {z-index: -1; position: absolute; background-color: blue; right: 15; top:15; width: 185; height: 185; text-align: center}
#xx {z-index: -2; position: absolute; background-color: red; right: 0; top:10; width: 50; height: 200;}
#xxx {z-index: -3; position: absolute; background-color: yellow; right: -400; top:15; width: 500; height: 185; border: 1px solid black; text-align: center}
</style> 

</head> 
<body> 
<div style="position: fixed; top: 25%; left: 25%; width: 400; Height:300; border: 1px solid #000000;">
&nbsp;[my screen]
<div id="x">That DIV must turn left wih (xxx)</div>
<div id="xx"></div>
<div id="xxx">That DIV must turn left onClick</div>

</div>
<a href="#">onClick</a>
<script>
   var a = document.querySelector("a"),
        x = document.getElementById("x"),
        xxx = document.getElementById("xxx");
   a.onclick = function() {
      var left = parseInt(getComputedStyle(x, "").getPropertyValue('left'));
      if (left > 0) {
         t = setInterval(function() {
             --left;
             x.style.left = left + "px";
             if (left == 0)  { 
                 clearInterval(t);
                 var leftXXX = parseInt(getComputedStyle(xxx, "").getPropertyValue('left')),
                leftmin =  parseInt(getComputedStyle(x, "").getPropertyValue('width'));
                tt = setInterval(function() {
                   --leftXXX;
                   xxx.style.left = leftXXX + "px";
                   if (leftXXX == leftmin) clearInterval(tt);
                }, 10);
              }
         }, 10);
      }
   }
</script>
</body> 
</html>

Последний раз редактировалось Dilettante_Pro, 01.08.2016 в 14:58.
Ответить с цитированием
  #20 (permalink)  
Старый 01.08.2016, 17:10
Интересующийся
Отправить личное сообщение для donkey Посмотреть профиль Найти все сообщения от donkey
 
Регистрация: 29.07.2016
Сообщений: 16

Dilettante_Pro, круто! Гранд мерси! Вы почти..

Понимаете, я "ваяю" хомяка, не совсем обычного конечно.. И, если с логикой у меня вроде ничего так, то с функциями и алгоритмами на данный момент полный алес, увы.

Но.. Я разгадал некоторые функции вашего скрипта и, в целом, он вполне подходит для моих целей. Еще раз большое спасибо вам!

Единственное, если возможно сделать, чтобы эти два слоя двигались одновременно? Или.. Придумаю что-нибудь..

Спасибо вам! Огромное! (:

П.С. Ссылку на ваш профиль, если вы не против конечно, вставлю в мои "титры", которые, собственно, и находятся в этом слое..
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как найти точки соприкосновения двух объектов в RaphaelJS Fatalityap Библиотеки/Тулкиты/Фреймворки 3 03.08.2012 16:33
Привязка тултипа к ссылке. nematod Общие вопросы Javascript 0 22.02.2011 19:56
Согласованное движение нескольких объектов. kalach Общие вопросы Javascript 15 18.11.2010 19:06
Массив объектов или объект объектов vladlen Общие вопросы Javascript 19 30.10.2010 03:10
переход по ссылке только после нескольких кликов по ней smilexpo Events/DOM/Window 8 24.11.2009 16:57