0

固定幅と高さの画像をプロットしています。ユーザーが画像をクリックできるようにし、画像がクリックされた場所 (xy 座標) を保存します。サンプルコードは次のとおりです。

<script language="JavaScript" type="text/JavaScript">
    var posx; var posy;

 function showP(e) {
        // captures the mouse position
        posx = 0; posy = 0;
        if (!e) { var e = window.event; }
        if (e.pageX || e.pageY) {
            posx = e.pageX;
            posy = e.pageY;
        }
        else if (e.clientX || e.clientY) {
            posx = e.clientX;
            posy = e.clientY;
        }
        alert('X mouse is: ' + posx + ' Y mouse is: ' + posy );
    } 
</script>

画像上の固定点に対して、異なるブラウザーで異なる X 座標と Y 座標を取得していることに気付きました。

なぜこれが事実なのか誰にもわかりますか。ありがとう

4

1 に答える 1

1

イベントで取得したすべてのデータを確認できます

 var a = "";
 for (var key in e){ 
     if( typeof e[key]!='function' &&  typeof e[key] !='object' )
     a += key+'='+ e[key]+'\n' 
  }
  alert(a)

この構造は、ブラウザのマージンとパディングを比較するのに役立ちます

var padding = parseInt($("#imgId").css("padding-top"));

コードとスタイルを調査する必要があると思います。おそらく、結果に影響を与えるパディングとマージンとの競合があります。

この方法がお役に立てば幸いです。

于 2012-09-24T17:22:26.513 に答える