5

ページに 2 つのリンクがあり、いずれかのリンクがクリックされたときにページ上のマウスの位置 (マウス x、y) に非表示の div を表示するとします。また、div のタイトルを設定する値を渡したいと思います (divTitle id を参照)。

jQueryを使用してこれを達成するにはどうすればよいですか?

非表示の部門:

<div class="boxFAQ" id="questionMarkId">
  <span id="divTitle"></span>  
  SHOW ME!
</div>
4

4 に答える 4

9

あなたが提供した文脈で、ここに助けがあります:

$('#questionMarkId').hide();

$('a').on('click', function(e) {
    e.preventDefault();
    $('#questionMarkId').css( 'position', 'absolute' );
    $('#questionMarkId').css( 'top', e.pageY );
    $('#questionMarkId').css( 'left', e.pageX );
    $('#questionMarkId').show();
});

そして、フィドルのリンク: http://jsfiddle.net/m6XPP/

于 2013-02-12T05:26:19.393 に答える
2

つまり、マウス座標を見つけるには、関数に次を追加する必要がありました。これを解決する「Jquery」以上の方法がないことに驚いています。あなたのご親切に感謝します!

var posx;
var posy;
if (typeof e.pageY === "undefined") 

    {       //will e work here?
    posx = window.event.clientX + document.body.scrollLeft 
    + document.documentElement.scrollLeft; 
    posy = window.event.clientY + document.body.scrollTop 
    + document.documentElement.scrollTop; 

    alert("was undefined!");
    } 
else{ 


    posx = e.pageX; 
    posy = e.pageY; 
    alert("was NOT undefined!");

    }
alert("posy:" + posy);
alert("posX:" + posx);
于 2013-02-13T21:07:33.010 に答える