イベントは、JavaScriptアプリケーションの鼓動心と、すべてを接着する接着剤です。このイベントは、ブラウザ内のWebページとの特定の種類のやり取りがある場合に発生します。イベントは、特定のコンテンツをクリックするユーザー、特定の要素を通過するマウス、またはキーボードの特定のキーを押すことです。また、イベントは、特定のWebページの読み込みや、ユーザーがウィンドウをスクロールしたり、ウィンドウサイズを変更したりするなど、Webブラウザーで発生することもあります。
JavaScriptを使用することにより、特定のイベントを聴き、特定のイベントがそれらに応じて発生することを指定できます。
1.イベントリスニングを追加します
つまり:
次のようにコードをコピーします:attachEvent( "onclick"、function(){...})// add
DeTachevent( "onclick"、function(){...})// delete
FF:
コードコピーは次のとおりです。AddEventListener( "click"、function(){...}、false)
//デフォルトのオブジェクトイベントとは異なる1つのオブジェクトを聞く複数のイベントを追加できます
removeEventListenner( "click"、function(){...}、false)
2。イベントオブジェクトを取得します
つまり:
コードコピーは次のとおりです。OP.ONCLICK= function(){
Ver oevent = window.event; //ウィンドウのプロパティとして
}
FF:
コードコピーは次のとおりです。OP.ONCLICK= function(oevent){
.... //パラメーターを渡すことによる制御
}
一般的な:
コードコピーは次のとおりです。OP.ONCLICK= function(oevent){
if(window.event){
oevent = window.event;
}
}
//リアルタイムで取得されますが、リターンオブジェクトのプロパティとメソッドは一貫していませんが、eventutilを使用して解決できます。
var eventutil = new Object;/** //*この方法は、特定のオブジェクトにイベントを追加するために使用されます。 Otargetは指定されたオブジェクトであり、SeventTypeはクリック、キーダウンなどのイベントタイプです。Fnhandlerはイベントコールバック関数*/eventutil.addeventhandler = function(otarget、seventtype、fnhandler){// firefox(otarget.addeventlistener){otarget.addeventlistegentegentegentegentegtergetの場合fnhandler、false); } // iE else if(otarget.attachevent){otarget.attachevent( "on" + seventtype、fnhandler); } else {otarget ["on" + seventtype] = fnhandler; }};/*この方法は、特定のオブジェクトの特定のイベントを削除するために使用されます。 Otargetは指定されたオブジェクトであり、Seventypeはクリック、キーダウンなどのイベントタイプです。fnhandlerはイベントコールバック関数*/ eventutil.removeeventhandler = function(otarget、seventtype、fnhandler){if(otarget.removeeventlistener){otarget.RemoveEneventlentener(seotarget.RemoveEventLentener( 間違い); } else if(otarget.detachevent){otarget.detachevent( "on" + seventtype、fnhandler); } else {otarget ["on" + seventtype] = null; }};/*フォーマットイベント。IEやその他のブラウザがイベントを異なって取得し、イベントのプロパティも異なるため、この方法は一貫したイベントを提供します*/eventutil.formatevent = function(oevent){// isieとiswinはJSファイルを参照して、ブラウザーとオペレーティングシステムタイプを決定します。 「キープレス」)? Oevent.Keycode:0; // IEはバブルのみをサポートし、oevent.eventphase = 2のキャプチャをサポートしていません。 oevent.ischar =(oevent.charcode> 0); oevent.pagex = oevent.clientx + document.body.scrollleft; oevent.pagey = oevent.clienty + document.body.scrolltop; //ブロックイベントのデフォルト動作}; // TOELEMENTを変換し、エレメントから標準の関連タルゲットIF(oevent.type == "mouseout"){oevent.relatedTarget = oevent.toelement; } else if(oevent.type == "mouseover"){oevent.relatedTarget = oevent.fromelement; } // bubbling oevent.stoppropagation = function(){this.cancelbubble = true; }; oevent.target = oevent.srcelement; //イベントの発生時間属性を追加すると、つまりevent.time =(new Date).getTime(); } oeventを返します。 }; eventutil.getEvent = function(){if(window.event){// format ie events this.formatevent(window.event); } else {return eventutil.getevent.caller.arguments [0]; }}; /**ブラウザとシステムの種類を審査するJSファイルを添付します。判断の結果として明白な名前のいくつかのグローバル変数を導入することにより、次のことを使用する場合、変数名の競合に注意する必要があります。 var aversion2 = sversion2.split( "。"); if(aversion1.length> aversion2.length){for(var i = 0; i <aversion1.length -aversion2.length; i ++){aversion2.push( "0"); }} else if(aversion1.length <aversion2.length){for(var i = 0; i <aversion2.length -aversion1.length; i ++){aversion1.push( "0"); }} for(var i = 0; i <aversion1.length; i ++){if(aversion1 [i] <aversion2 [i]){return -1; } else if(aversion1 [i]> aversion2 [i]){return 1; }} return 0;} var isopera = suseragent.indexof( "opera")> -1; var isminopera4 = isminopera5 = isminopera6 = isminopera7 = isminopera7_5 = false; if(isopera){var foperaversion; if(navigator.appname == "opera"){foperaversion = fappversion; } else {var reoperaversion = new regexp( "opera(//d+/.//d+)"); reoperaversion.test(suseragent); foperaversion = parsefloat(regexp ["$ 1"]); } isminopera4 = foperaversion> = 4; IsMinopera5 = foperaversion> = 5; IsMinopera6 = foperaversion> = 6; IsMinopera7 = foperaversion> = 7; isminopera7_5 = foperaversion> = 7.5;} var iskhtml = suseragent.indexof( "khtml")> -1 || suseragent.indexof( "konqueror")> -1 || suseragent.indexof( "applewebkit")> -1; var isminsafari1 = isminsafari1_2 = false; var isminkonq2_2 = isminkonq3 = isminkonq3_1 = isminkonq3_2 = false; if(iskhtml){iskhtml){iskhtml){iskhtml) iskonq = suseragent.indexof( "konqueror")> -1; if(issafari){var reaplewebkit = new regexp( "applewebkit ///(// d+(?://.//d*)?)"); Reapplewebkit.test(suseragent); var fapplewebkitversion = parsefloat(regexp ["$ 1"]); isminsafari1 = fapplewebkitversion> = 85; isminsafari1_2 = fapplewebkitversion> = 124; } else if(iskonq){var rekonq = new regexp( "konqueror ///(// d+(?://././/d+(?://.//d)??)")); rekonq.test(suseragent); isminkonq2_2 = compareversions(regexp ["$ 1"]、 "2.2")> = 0; isminkonq3 = compareversions(regexp ["$ 1"]、 "3.0")> = 0; isminkonq3_1 = compareversions(regexp ["$ 1"]、 "3.1")> = 0; isminkonq3_2 = compareversions(regexp ["$ 1"]、 "3.2")> = 0; }} var isie = suseragent.indexof( "compatible")> -1 && suseragent.indexof( "msie")> -1 &&!isopera; var isminie4 = isminie5 = isminie5_5 = isminie6 = false; if(isie){var reie = new regexp( "msie(//d+//.//d+);"); reie.test(suseragent); var fieversion = parsefloat(regexp ["$ 1"]); ISMINIE4 = Fieversion> = 4; isminie5 = fieversion> = 5; ISMINIE5_5 = Fieversion> = 5.5; isminie6 = fieversion> = 6.0;} var ismoz = suseragent.indexof( "gecko")> -1 &&!iskhtml; var isminmoz1 = sminmoz1_4 = isminmoz1_5 = false; if(ismoz){var remoz = new new regexp( "rv:(//d+/.//d+(?://.//d+)") "); remoz.test(suseragent); isminmoz1 = compareversions(regexp ["$ 1"]、 "1.0")> = 0; isminmoz1_4 = compareversions(regexp ["$ 1"]、 "1.4")> = 0; isminmoz1_5 = compareversions(regexp ["$ 1"]、 "1.5")> = 0;} var isns4 =!isie &&!isopera &&!ismoz &&!iskhtml &&(suseragent.indexof( "mozilla")== 0)&&(figator == "netscape") 4.0 && fappversion <5.0); var isminns4 = isminns4_5 = isminns4_7 = isminns4_8 = false; if(isns4){isminns4 = true; ISMINNS4_5 = FAPPVERSION> = 4.5; ISMINNS4_7 = FAPPVERSION> = 4.7; isminns4_8 = fappversion> = 4.8;} var iswin =(navigator.platform == "win32")|| (navigator.platform == "windows"); var ismac =(navigator.platform == "mac68k")|| (navigator.platform == "macppc")|| (navigator.platform == "macintosh"); var isunix =(navigator.platform == "x11")&&!iswin &&!ismac; var iswin98 = iswinnt4 = iswin2k = iswinme = iswinxp = ismacpipcc = ismacppcc = fals; ISMINSUNOS5 = ISMINSUNOS5_5 = ISMINSUNOS5_5 = false; if(iswin){iswin95 = suseragent.indexof( "win95")> -1 || suseragent.indexof( "Windows 95")> -1; ISWIN98 = suseragent.indexof( "Windows 98")> -1 || suseragent.indexof( "Windows 98")> -1; iswinme = suseragent.indexof( "Windows 98")> -1 || suseragent.indexof( "windows me")> -1; iswin2k = suseragent.indexof( "windows nt 5.0")> -1 || suseragent.indexof( "Windows 2000")> -1; ISWINXP = suseragent.indexof( "Windows NT 5.1")> -1 || suseragent.indexof( "windows xp")> -1; iswinnt4 = suseragent.indexof( "windows nt")> -1 || suseragent.indexof( "windows nt")> -1 || suseragent.indexof( "windows nt")> -1 || suseragent.indexof( "windows nt4.0")> -1 &&(!iswinme &&!iswin2k &&!iswinxp);} if(ismac68k = suseragent.indexof( "mac_68000")> -1 || suseragent.indexof( "68k")> -1; ismacppc = suseragent.indexof( "mac_powerpc")> -1 || suseragent.indexof( "ppc")> -1; } if(isunix){issunos = suseragent.indexof( "sunos")> -1; if(issunos){var resunos = new regexp( "sunos(//d+//.//d+(?://.//d+)") "); resunos.test(suseragent); ISMINSUNOS4 = CompartVersions(regexp ["$ 1"]、 "4.0")> = 0; Isminsunos5 = CompartVersions(regexp ["$ 1"]、 "5.0")> = 0; ISMINSUNOS5_5 = CompartVersions(regexp ["$ 1"]、 "5.5")> = 0; }}上記はJSイベントの処理です。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。