0

こんにちは、私は現在asp.netプロジェクトに取り組んでおり、ユーザーがカーソルを左から右または右から左に移動すると、非表示のテキストフィールドが入力され、サーバー側でdopostbackが呼び出されるボタンを作成する必要がありますその隠しフィールドの値を読み取ります。

私の問題は、イベントリスナーを作成しても呼び出されないため、pageX が機能しないことです。現在、Google chrome ブラウザーでテストしています。IE で clientX 部分をテストしましたが、うまく動作します。

これはコーディングの .aspx 側です

<asp:Button ID="Button2" runat="server" Text="<<<------          ------>>>" 
  Width="50%" Height="60px" onclick="Button2_Click" 
  onmouseover="getMouseXY()" onmouseout="getMouseOut()"/>   


  <script type="text/javascript">
        var IE = document.all?true:false;
        var dayD = 0;
        var inCordX = 0;
        var outCordX = 0;                

        if (!IE) 
        document.captureEvents(Event.MOUSEMOVE)                 

        function getMouseOut(e){    
            if (IE) {outCordX = event.clientX + document.body.scrollLeft;}
            else {outCordX = e.pageX;}                                                   
            if(inCordX>outCordX){dayD=1;}else{dayD=-1;}           
            document.getElementById("outputResult").value = dayD;                        
            __doPostBack("","");
        }       

        function getMouseXY(e) {        
            if (IE) {inCordX = event.clientX + document.body.scrollLeft;}
            else {inCordX = e.pageX;}              
            alert(inCordX);
            return true;
        }
    </script>

これは aspx.cs のコーディングです

protected void Page_Load(object sender, EventArgs e)
    {            
        if ((Request.Form["outputResult"] == "-1")
           ||(Request.Form["outputResult"] == "-1"))
        {
            Button2_Click(this, new EventArgs());
        }

    }

    protected void Button2_Click(object sender, EventArgs e)
    {
        Button2.Text = Request.Form["outputResult"] + "";
    }
4

1 に答える 1

0

よくわからないけどやってみる

  onmouseover="getMouseXY" onmouseout="getMouseOut"/> 

それ以外の

  onmouseover="getMouseXY()" onmouseout="getMouseOut()"/> 
于 2011-06-11T23:08:05.763 に答える