ugrás a tartalomhoz

A böngésző default működésének tiltása Internet Explorer 8-ban

haho · 2011. Júl. 22. (P), 17.33
Megoldható? De hogyan? - a kérdéseim röviden és tömören.

Sziasztok!

A weboldalamra saját gördítősávot írtam JavaScriptben. És ezért, hogy a csúszka használata közben a felhasználó ne tudjon kijelölni tartalmakat ami igencsak zavaró lenne, akkor (CSAK AKKOR) amikor a csúszka használatban letiltom a böngészők alap reakcióit a preventDefault() metódussal. Az öt legismertebb böngésző legújabb verzióival készítem az oldalt és minden rendben van velük, de aztán jött a bökkenő...

Egy XP-vel futottam össze ahol ma még csak az InternetExplorer 8 a legújabb letölthető Explorer verzió.
Az Explorer 8 viszont még nem ismeri a preventDefault metódust.

Az interneten bárhol jártam mindenhol azt találtam, hogy IE8-ban ezt helyettesíteni lehet az event.returnValue=false; -al. Csakhogy ez nekem nem működött.

Van ennek a metódusnak valami speciális használati módja amire én nem jöttem rá vagy ez nem is arra való amire gondolom vagy hogy lehet megoldani a default események tiltását IE8-ban?

Előre is...
 
1

Hibák

Poetro · 2011. Júl. 22. (P), 17.50
És ugye nem tapasztaltál semmi JavaScript hibát, és meg is volt az event objektumod.
function eventHandler(event) {
  if (!event) {
    event = window.event;
  }

  if (event.preventDefault) {
    event.preventDefault()
  }
  else {
    event.returnValue = false;
  }
  // ...
}
Érdemes lenne megnézni az IE Fejlesztői eszközében (F12), hogy milyen üzeneteket dobál.
2

Nekem hasonló problémámat

bb0072 · 2011. Júl. 22. (P), 17.55
Nekem hasonló problémámat oldotta meg a következő kódrészlet:

e = e || window.event;
if(e.preventDefault) {
    e.preventDefault();
}
if(navigator.userAgent.toLowerCase().indexOf('msie') != -1) {
    e.returnValue = false;
    e.stopPropagation(); 
    e.stop();
}
3

És a legszebb, hogy mindezt

bb0072 · 2011. Júl. 22. (P), 17.58
És a legszebb, hogy mindezt úgy, hogy a e.stop() konzol hibát dob, viszont enélkül meg nem működik. IE forever !!!!