Предотвратить выбор текста/меню двойного щелчка левой кнопкой мыши в Opera с помощью Dojo

Возможный дубликат:
Отключить событие двойного щелчка для элемента в Opera

У меня проблема с браузером Опера. Это только тот, который отображает контекстное меню при двойном щелчке левой кнопкой мыши/выборе. У меня есть страница с пустыми div (фоновые изображения). Они перехватывают события щелчка и контекстного меню, и щелчок работает нормально, когда вы нажимаете медленно. Если вы нажмете в два раза быстрее, текст будет выбран. Я заметил, что, вероятно, основной причиной этого является использование inline-block просто потому, что целое рассматривается как одна строка. Вот пример кода:

<!doctype html>
<html>
    <head>
        <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.8/dojo/dojo.js" data-dojo-config="async: 1"></script>
    </head>
    <body>
        <div style="display: inline-block;">
        <table>
            <tr>
                <th colspan="3">Header</th>
            </tr>
            <tr>
                <td></td>
                <td>
                <div id="test" style="height: 38px; width: 38px; background: red;">
                </div>
            </td>
            <td></td>
        </tr>
      </table>
    </div>
    <div style="display: inline-block;">
      <table>
            <tr>
                <th colspan="3">Header</th>
            </tr>
            <tr>
                <td></td>
                <td>
                <div id="test" style="height: 38px; width: 38px; background: red;">
                </div>
            </td>
            <td></td>
        </tr>
      </table>
    </div>
    </body>
</html>
<script type="text/javascript">
require(["dojo/dom", "dojo/on","dojo/domReady!"], function(dom, on) {
    on(dom.byId('test'), 'click', function() { /* do something here */ return false; });
});
</script>

Можно ли это предотвратить, оставив inline-block? Меня особенно интересует решение с Dojo, если это возможно.


person mariozski    schedule 15.10.2012    source источник
comment
Я переключил div на float: на данный момент оставил, но если у кого-то есть способ предотвратить это, я буду рад принять это :-)   -  person mariozski    schedule 15.10.2012


Ответы (1)


Я подозреваю, что это имеет мало общего с вашим кодом и со всеми настройками Opera по умолчанию.

Вот статья о том, как отключить контекстное меню при двойном -щелкните. Очевидно, что это не решит вашу проблему, поскольку это настройка на стороне клиента, которую вы не можете контролировать.

person Laoujin    schedule 15.10.2012