javascript
  • php
  • ajax
  • 2016-11-17 23 views 0 likes 
    0

    我有下面的腳本,它顯示了來自搜索頁onmouseover的值。如何僅觸發AJAX請求onmouseover

    <script type="text/javascript"> 
        function preview(val) { 
         $.ajax({ 
         type: "POST", 
         url: "search.php", 
         data:'id='+val, 
         success: function(data){ 
          $(".ress").html(data); 
         } 
        }); 
        } 
    </script> 
    

    HTML:

    <div class="CVSearchResult" onmouseover="preview('1')"> 
    

    搜索:

    <?php echo $_POST['id']; ?> 
    

    輸出類.ress:

    1 
    

    但是我想隱藏輸出onmouseout爲好。我怎樣才能做到這一點?我的意思是隻要觸發AJAX鼠標懸停和隱藏,如果不懸停。

    回答

    0
    <div class="CVSearchResult" onmouseover="preview('1')" onmouseout="hide()"> 
    <script> 
    function hide() { 
        $(".ress").html(''); 
    } 
    </script> 
    

    當用戶將鼠標移離元素以觸發隱藏功能時,您正在添加事件處理程序。

    hude函數獲取結果dom元素(可以包含之前調用的選定結果)並將html設置爲空字符串。

    這樣當你用鼠標移開div元素被清除。

    +0

    我認爲有問題與此代碼。你能重新檢查你的代碼嗎? –

    +0

    我忘記了關閉「'」 – user2693928

    +1

    雖然此代碼段可能會解決問題,包括解釋[真的有幫助](http://meta.stackexchange.com/q/114762)以提高您的帖子的質量。請記住,你正在爲將來的讀者回答這個問題,而不僅僅是現在問的人!請編輯您的答案以添加解釋,並指出適用的限制和假設。 – BrokenBinary

    0

    那麼我做了一個小提琴,而不是顯示你如何做到這一點。

    Fiddle with it

    HTML

    <div class="CVSearchResult" data-mydata="1"> 
        HOVER ON ME1 
    </div> 
    <div class="ress"> 
        This was hidden but is now visible.1 
    </div> 
    

    JS

    $(document).ready(function() { 
        $(".CVSearchResult").on("mouseover", function() { 
        preview($(this).attr("data-mydata")); 
        }); 
        $(".CVSearchResult").on("mouseout", function() { 
        $(".ress").css("display", "none"); 
        }) 
    }) 
    function preview(val) { 
        $(".ress").css("border", "2px solid black"); 
        /* Add your own ajax call here to get the data that you want... */ 
        var data = val; 
        $(".ress").html(data); 
        $("div.ress").css("display", "block"); 
        /* --- */ 
    } 
    

    CSS

    .ress { 
        display: none; 
        border: 1px solid black; 
        font-family: Helvetica; 
        position: absolute; 
        left: 200px; 
        top: 10px; 
        padding: 5px; 
    } 
    
    +0

    這不起作用 –

    +0

    哪部分不起作用? – grom

    +0

    現在這是工作,但在此之後,我得到了一個小問題。由於鼠標懸停數據來自ajax,每次如果將光標移到類上,則日期重新加載(如果光標移動,則閃爍)。 –

    相關問題