Основан 26 Июля 2013 года
freehacks.ru fhacks.me fhacks.pw fhacksnplmzxaaoo.onion

Показано с 1 по 7 из 7
  1. #1
    Trust
    TopicStarter
    Красава
    Аватар для Develop

    Статус
    Offline
    Регистрация
    27.07.2013
    Сообщений
    397
    Репутация
    77 + / -
    Web-программист

    Прошу помочь дописать js код

    Прошу знающих людей помочь мне дописать код

    [HTML]<script>
    // Функция для определения координат указателя мыши
    function defPosition(event) {
    var x = y = 0;
    if (document.attachEvent != null) { // Internet Explorer & Opera
    x = window.event.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
    y = window.event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
    } else if (!document.attachEvent && document.addEventListener) { // Gecko
    x = event.clientX + window.scrollX;
    y = event.clientY + window.scrollY;
    } else {
    // Do nothing
    }
    return {x:x, y:y};
    }

    function menu(type, evt) {
    // Блокируем всплывание события contextmenu
    evt = evt || window.event;
    evt.cancelBubble = true;
    // Показываем собственное контекстное меню
    var menu = document.getElementById("contextMenuId");
    var html = "";
    switch (type) {
    case (1) :
    html = "Меню для первого ДИВа";
    html += "<br><a href='#'>Первая функция</a>";
    html += "<br><a href='#'>Вторая функция</a>";
    html += "<br><a href='#'>Третья функция</a>";
    break;
    }
    // Если есть что показать - показываем
    if (html) {
    menu.innerHTML = html;
    menu.style.top = defPosition(evt).y + "px";
    menu.style.left = defPosition(evt).x + "px";
    menu.style.display = "";
    }
    // Блокируем всплывание стандартного браузерного меню
    return false;
    }

    // Закрываем контекстное при клике левой или правой кнопкой по документу
    // Функция для добавления обработчиков событий
    function addHandler(object, event, handler, useCapture) {
    if (object.addEventListener) {
    object.addEventListener(event, handler, useCapture ? useCapture : false);
    } else if (object.attachEvent) {
    object.attachEvent('on' + event, handler);
    } else alert("Add handler is not supported");
    }
    addHandler(document, "contextmenu", function() {
    document.getElementById("contextMenuId").style.dis play = "none";
    });
    addHandler(document, "click", function() {
    document.getElementById("contextMenuId").style.dis play = "none";
    });
    </script>






    <div oncontextmenu="menu(1, event);return false;" style="height:80px;background:#e1e1e1;" >Кликни правой кнопкой</div>


    <!-- Контер для собственного контекстного меню. По умолчания - скрыт. -->
    <div id="contextMenuId" style="position:absolute; top:0; left:0; border:1px solid #666; background-color:#CCC; display:none; float:left;"></div>[/HTML]

    вот, короче при одинарном клике правой кнопкой мыши вылезает контекстное меню, а если сделать 2 клика подряд то вылезает стандартное контекстное меню. Проблема собственно и заключается в том, что бы убрать этот баг (хоть сколько бы я раз не кликал, должно вылазить именно мое меню, а не стандартное)

  2. #2
    Trust
    Аватар для ul1k317

    Статус
    Offline
    Регистрация
    26.08.2013
    Сообщений
    823
    Репутация
    395 + / -
    Web-программист
    Код:
    <div id="contextMenuId" oncontextmenu="menu(1, event);return false;" style="position:absolute; top:0; left:0; border:1px solid #666; background-color:#CCC; display:none; float:left;"></div>
    в хроме работает.
    php, mysql, mssql, js, html, css, ajax, administrating, it consulting, etc.

  3. #3
    Trust
    TopicStarter
    Красава
    Аватар для Develop

    Статус
    Offline
    Регистрация
    27.07.2013
    Сообщений
    397
    Репутация
    77 + / -
    Web-программист
    Не знаю что с хромом, но мозила чет подводит (

  4. #4
    Trust
    TopicStarter
    Красава
    Аватар для Develop

    Статус
    Offline
    Регистрация
    27.07.2013
    Сообщений
    397
    Репутация
    77 + / -
    Web-программист
    Я имел ввиду двойной клик правой кнопкой мыши, и вылазиет стандартное меню

  5. #5
    Trust
    Аватар для ul1k317

    Статус
    Offline
    Регистрация
    26.08.2013
    Сообщений
    823
    Репутация
    395 + / -
    Web-программист
    C моей правкой в хроме, опере и ff по двойному щелчку (только если над серой панелью), не появляется нативное меню. Появляется то котрое у тебя.
    php, mysql, mssql, js, html, css, ajax, administrating, it consulting, etc.

  6. #6
    Trust
    TopicStarter
    Красава
    Аватар для Develop

    Статус
    Offline
    Регистрация
    27.07.2013
    Сообщений
    397
    Репутация
    77 + / -
    Web-программист
    Бред какой то) не очень люблю хром, предпочитаю мозилу, и там вот такого рода баг(

  7. #7
    Trust
    Аватар для ul1k317

    Статус
    Offline
    Регистрация
    26.08.2013
    Сообщений
    823
    Репутация
    395 + / -
    Web-программист
    Какая версия?
    php, mysql, mssql, js, html, css, ajax, administrating, it consulting, etc.

Метки этой темы

Ваши права

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

Информация на сайте предоставлена исключительно в ознакомительных целях, использование знаний в противозаконных целях преследуется по закону! Администрация не несет ответственности за ваши деяния.