[JS]blokowanie menu kontekstowego także w nowych przeglądarkach

0

Witam
chciałem zrobić sobie własną funkcję, która uruchomi się po kliknięciu PPM i to mi wyszło, ale szpeci menu kontekstowe. Udało się go nie wyświetlać, po dodaniu do przykładowo obrazka oncontextmenu="return false;. Działa na FF 3.6, ale na chromie i FF 4 już nie. Te ostatnie wymagają oncontextmenu="return **true**;. Niektóre przeglądarki wymagają zwracania prawdy, a inne fałszu, ale nie wiem które... Może jest na to jakiś inny sposób, który będzie bardziej elastyczny? Proszę o pomoc.

0

Problem rozwiązany. Jakoś się kłóciło użycie jednocześnie onmousedown i oncontextmenu. Przerobiłem trochę i jest dobrze:)

0

Podmienianie menu kontekstowego to ogólnie zły pomysł i dodatkowo dość często blokowany najróżniejszej maści wtyczkami, więc czy jest sens?

0

Ano, to przeważnie jest zły pomysł. Użytkowników przeważnie tylko wkurza, a naiwni developerzy, którzy myślą, że to ich zabezpieczy przed np. skopiowaniem treści, są w swoim pomyślunku... no, naiwni. Ostatnio zaskoczyła mnie jakaś kompletnie nietechniczna osoba, która wspomniała o konieczności wyłączenia skryptów, bo ktoś nieudolnie "blokował" możliwość kliknięcia PPM ;).

Tak czy siak, jeśli to ma działać w nowoczesnych przeglądarkach, to można zastosować model zdarzeń W3C:

window.oncontextmenu = function(evt) {
  evt.preventDefault();
};

To eleganckie rozwiązanie, choć w IE funkcja preventDefault() nie jest niestety dostępna. Zresztą, w IE nawet parametr evt nie jest przekazywany, więc trzeba się przed tym zabezpieczyć, jeśli strona ma być uruchamiana w tej przeglądarce (wspomniałeś jednak tylko o różnych wersjach Fx oraz Chrome'a).

0

Nie chcę blokować kopiowania. Robię sobie "aplikację";). Chcę mieć pod PPM inne funkcjonalności ("podaj współrzędne" itp), a nie chcę wszystkiego pakować w przyciskach wokół pola edycji. Dokumenty Google wykorzystują PPM, co sprawia, że interfejs jest bardziej intuicyjny.
Co do przeglądarek, wspomniałem tylko o FF i Chromie, bo mam Linuksa i nie mam IE. Tylko z rzadka uruchamiam tą przeglądarkę na innym kompie i oglądam efekt. Zależy mi na jak największej kompatybilności ze wszystkimi przeglądarkami, tak aby "aplikacja" była dostępna dla najszerszej grupy odbiorców (IE 6 można pominąć;) )
PS.: Jak ktoś sobie zablokuję JS, to jego strata. Jasno określę, że aby wszystko działało, obsługa skryptów musi być włączona.

1 użytkowników online, w tym zalogowanych: 0, gości: 1