Ich verwende das slide.html5rocks.com-Framework und versuche, Tags in Tag-Links img zu verwenden, und ich kann das JavaScript-onclick nicht abrufen, um die linken und rechten Tastenereignisse zum Ändern von Folien zu simulieren
Simulieren Sie das Ereignis der linken und rechten Pfeiltaste mit Javascript
Sie suchen nach etwas, das ein Ereignis auslöst. Folgendes sollte funktionieren:
function fireKey(el)
{
//Set key to corresponding code. This one is set to the left arrow key.
var key = 37;
if(document.createEventObject)
{
var eventObj = document.createEventObject();
eventObj.keyCode = key;
el.fireEvent("onkeydown", eventObj);
}else if(document.createEvent)
{
var eventObj = document.createEvent("Events");
eventObj.initEvent("keydown", true, true);
eventObj.which = key;
el.dispatchEvent(eventObj);
}
}
Ich habe damit einen coolen kleinen Schnittstellentest gemacht, der dich wahrscheinlich interessieren wird. So sieht es aus: http://jsfiddle.net/FvCut/6/
Getestet in Firefox 3.6, Opera 11, Safari 5, IE 8 und IE 7/IE Quirks Mode. Beachten Sie: Opera 11 löst keine wiederholten “Keydown” -Ereignisse aus, wenn Sie eine Taste gedrückt halten, wie dies bei den meisten Browsern der Fall ist.
-
Das ist einer der wenigen Ausschnitte, die für mich in Safari/Chrome funktioniert haben. Danke!
– auco
14. April ’12 um 23:35
-
Danke. Aber es funktioniert nicht (mobile Safari). Gibt es eine Möglichkeit, ein Ereignis für ein globales Dokument zu senden?
– Dmitri
9. August ’12 um 13:30 Uhr
-
In meinem Fall funktioniert nur der zweite Teil des Codes aber mit
eventObj.keyCode = key;
! Mobile Safari 5.1.– Dmitri
9. August ’12 um 14:12
Wie simulieren Sie das Ereignis? document.dispatchEvent funktioniert nicht in allen Browsern. Sie können die Funktion wie folgt testen: typeOf(document.dispatchEvent) != 'undefined'
.