Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 27.07.2012, 20:06
Аспирант
Отправить личное сообщение для FoxTrix Посмотреть профиль Найти все сообщения от FoxTrix
 
Регистрация: 27.07.2012
Сообщений: 73

смысл в этой функции есть, убирать её не нужно, нужно чтобы IE перестал к ней предираться
Ответить с цитированием
  #12 (permalink)  
Старый 27.07.2012, 20:19
Аспирант
Отправить личное сообщение для FoxTrix Посмотреть профиль Найти все сообщения от FoxTrix
 
Регистрация: 27.07.2012
Сообщений: 73

ругается он на
div.style.left = (x - left) + 'px';
Ответить с цитированием
  #13 (permalink)  
Старый 27.07.2012, 20:32
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от FoxTrix Посмотреть сообщение
ругается он на
div.style.left = (x - left) + 'px';
а где left определен?
Ответить с цитированием
  #14 (permalink)  
Старый 27.07.2012, 20:33
Аспирант
Отправить личное сообщение для FoxTrix Посмотреть профиль Найти все сообщения от FoxTrix
 
Регистрация: 27.07.2012
Сообщений: 73

выше
left = div.offsetLeft;
left = x - left;
Ответить с цитированием
  #15 (permalink)  
Старый 27.07.2012, 20:47
Аспирант
Отправить личное сообщение для FoxTrix Посмотреть профиль Найти все сообщения от FoxTrix
 
Регистрация: 27.07.2012
Сообщений: 73

может ему + 'px' не нравится?
Ответить с цитированием
  #16 (permalink)  
Старый 27.07.2012, 20:51
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от FoxTrix Посмотреть сообщение
может ему + 'px' не нравится?
я думаю с left какие то проблемы-попробуйте вывести чему left равно
Ответить с цитированием
  #17 (permalink)  
Старый 27.07.2012, 20:55
Аспирант
Отправить личное сообщение для FoxTrix Посмотреть профиль Найти все сообщения от FoxTrix
 
Регистрация: 27.07.2012
Сообщений: 73

кажется нашёл в чём проблема, после
event.pageX = event.clientX + (html && html.scrollLeft || body && body.scrollLeft || 0) - (html.clientLeft || 0);

и
x = event.pageX;

алерт х всё равно undefined =(
Ответить с цитированием
  #18 (permalink)  
Старый 27.07.2012, 20:59
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

а где у Вас традиционные
e=e||window.event;
а у Вас просто event
Ответить с цитированием
  #19 (permalink)  
Старый 27.07.2012, 21:19
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Попробуйте так
if(event.pageX == null) 
		{ 
    			var html = document.documentElement
    			var body = document.body

    			x = event.clientX + (html && html.scrollLeft || body && body.scrollLeft || 0) - (html.clientLeft || 0)
		} else
		x = event.pageX;
Ответить с цитированием
  #20 (permalink)  
Старый 27.07.2012, 21:30
Аспирант
Отправить личное сообщение для FoxTrix Посмотреть профиль Найти все сообщения от FoxTrix
 
Регистрация: 27.07.2012
Сообщений: 73

исправил, получилось вот так
function move(div) 
{
	document.onmousedown = function() {return false}
	div.style.cursor = 'move';
	document.onmousemove = function(e)
	{
		e=e||window.event;
		if(e.pageX == null) 
		{ 
    			var html = document.documentElement
    			var body = document.body

    			e.pageX = e.clientX + (html && html.scrollLeft || body && body.scrollLeft || 0) - (html.clientLeft || 0);
		}
		x = e.pageX;
		left = div.offsetLeft;
		left = x - left;
		var shelf = document.getElementById('shelf');
		var slide = div.offsetWidth / 2;
		var id = 0;
		var bookId;
		var tmp = 0;
		var move = 0;
		document.onmousemove = function(e)
		{
			e=e||window.event;
			if(e.pageX == null) 
			{ 
    				var html = document.documentElement
    				var body = document.body

    				e.pageX = e.clientX + (html && html.scrollLeft || body && body.scrollLeft || 0) - (html.clientLeft || 0);
			}
			div.style.zIndex = 100;
			x = e.pageX;
			div.style.left = x - left + 'px';

теперь див двигается, но не отпускается >_< как я ненавижу IE
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
возможно где-то уже повторялось, по поводу invalid Json belbek AJAX и COMET 4 20.06.2012 02:16
firebug пишет ошибка invalid range in character class Dim@ Общие вопросы Javascript 5 10.05.2012 16:52
invalid, illegal character exception Vantedur Оффтопик 7 17.03.2012 03:11
missing ) after argument list - что не так? santus jQuery 2 30.12.2011 11:43
Warning: set_error_handler() expects argument - что это такое ?! PaFF Ваши сайты и скрипты 0 29.03.2011 09:59