firefoxとjavascriptとeventと。
firefoxで、javascript内からeventを渡す時についての質問です。
制作環境はdreamweaver 8です。
dreamweaverで、ボタンのロールオーバー時に画像を変化させる時に自動的にMM_swapImage()というfunctionが作られますが、
ボタンのロールオーバー時に、もう一つ、吹き出しの出るfunctionを実行したいので、このようにしました。
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments;
document.MM_sr=new Array;
for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){
document.MM_sr[j++]=x;
if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];
}
var chkName=MM_swapImage.arguments[0];
if(chkName == 'Image4') showTooltip(event,'リンクの内容1');
if(chkName == 'Image5') showTooltip(event,'リンクの内容2');
if(chkName == 'Image6') showTooltip(event,'リンクの内容3');
if(chkName == 'Image7') showTooltip(event,'リンクの内容4');
}
showTooltip()では、event.clientX等を取得して、表示に反映させます。
これまでの経過は、
・safariでは正常に表示される。
・単純にhtmlの「onmouseover=showTooltip(event,'リンクの内容1');」では、firefoxでも正常に表示される。
原因を色々調べたところ、
・「chkName」は取得できていて、if文も問題ない。
・eventを数字等に変えるとshowTooltip自体は一応実行される。
といった状況です。
おそらくfirefoxでは、eventをjavascriptから取得するにはなにか別の方法があるのでは?と思い、調べてみたのですが、
window.event
document.event
と表記してみるくらいしか分かりませんでした。
(両方とも試しましたが、変化無しです)
もし何か分かる方がいらっしゃいましたらご教示頂けると幸いです。