За последние 24 часа нас посетили 55048 программистов и 1749 роботов. Сейчас ищет 791 программист ...

прошу помощи у гуру

Тема в разделе "JavaScript и AJAX", создана пользователем kriss, 17 сен 2010.

  1. kriss

    kriss Активный пользователь

    С нами с:
    30 июл 2010
    Сообщения:
    19
    Симпатии:
    0
    есть функция в которой вызывается вторая функция

    [js] function MouseDow(e){
    dx=e.clientX - parseInt(jQuery(this).css("left"));
    $(document).bind('mousemove',MouseMoveEvent);

    }

    [/js]
    вот вторая функция в которой происходит проверка элемента и поиск координат элемента на который нажали

    [js]function MouseMoveEvent(e){ if(this == l){
    var left = e.clientX - dx; .......
    }[/js]

    Вопрос вот в ечм, почему во вторую функцию не прилитает значение this и не могу узнать координаты (e.clientX) пишет NaN
    в чем ошибка, кто может подсказать, или направить на тему или статью в которой мона прочитать, никак не могу найти(
     
  2. neverlose

    neverlose Активный пользователь

    С нами с:
    27 авг 2008
    Сообщения:
    1.112
    Симпатии:
    20
    this - указатель объекта на самого себя. В функции объекта, кроме "e" я не нашёл.
     
  3. kriss

    kriss Активный пользователь

    С нами с:
    30 июл 2010
    Сообщения:
    19
    Симпатии:
    0
    ну а как определить на что нажато и найти координаты мыши на данном элементе, никак не могу разобраться, вызов функции вот такой [js]jQuery("."+c).live('mousedown',MouseDow);[/js]
     
  4. kriss

    kriss Активный пользователь

    С нами с:
    30 июл 2010
    Сообщения:
    19
    Симпатии:
    0
    точнее координаты мыши не над обьектом а над документом но айди элемента нуна для дальнельшего условия
     
  5. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
  6. kriss

    kriss Активный пользователь

    С нами с:
    30 июл 2010
    Сообщения:
    19
    Симпатии:
    0
    я не могу понять js код переписать на jquery =((
     
  7. kriss

    kriss Активный пользователь

    С нами с:
    30 июл 2010
    Сообщения:
    19
    Симпатии:
    0
    про100 непойму почему не передаеться id, ну ето как то сообразила, а вот почему не хавает координаты относительно документа никак не могу понять
     
  8. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    пытаешься писать на jQuery без основ JavaScript ? Это смешно.
    jQuery служит для облегчения javascript-кодинга, а не для его замены.

    почитай по ссылке - там похожая задача с переносом элементов.
     
  9. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    [js]
    function fixEvent(e) {
    // получить объект событие для IE
    e = e || window.event;

    // добавить pageX/pageY для IE
    if ( e.pageX == null && e.clientX != null ) {
    var html = document.documentElement;
    var body = document.body;
    e.pageX = e.clientX + (html && html.scrollLeft || body && body.scrollLeft || 0) - (html.clientLeft || 0);
    e.pageY = e.clientY + (html && html.scrollTop || body && body.scrollTop || 0) - (html.clientTop || 0);
    }

    // добавить which для IE
    if (!e.which && e.button) {
    e.which = e.button & 1 ? 1 : ( e.button & 2 ? 3 : ( e.button & 4 ? 2 : 0 ) );
    }

    return e;
    }

    function mouseMove(event){
    event = fixEvent(event);
    document.getElementById('mouseX').value = event.pageX;
    document.getElementById('mouseY').value = event.pageY;
    }

    var obj = null; /* глобальный объект для хранения ссылки this */
    document.onmousemove = mouseMove;
    [/js]
    код для кроссбраузерного определения положения указателя мыши относительно левого верхнего угла.

    как видно из комментария, нужно в обработчике необходимых элементов this присваивать глобальной переменной obj,
    тогда она будет доступна из любой функции.
     
  10. kriss

    kriss Активный пользователь

    С нами с:
    30 июл 2010
    Сообщения:
    19
    Симпатии:
    0
    спасибо за помощь
     
  11. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Объясни ребенку, что такое framework =)
     
  12. kriss

    kriss Активный пользователь

    С нами с:
    30 июл 2010
    Сообщения:
    19
    Симпатии:
    0
    я знаю что такое jquery, начали изучать java с него потому js код понять (относительно) трудно
     
  13. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Я знаю Кристину, которая начала изучать Java и сейчас пытается разобраться с JavaScript.
    Совпадение? О_о
    Привет с треньки PiM, тогда =)
     
  14. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    никакого секса!