2013-08-21 46 views
-1

我做惡夢關閉這個使用Javascript DIV .. 我的目標是儘快爲perosn提交一個表單和X按鈕來關閉它獲得的股利彈出..如何關閉此DIV?

if(isset($_POST['letter1'])) 
    { 

    echo'<div id="popup">'; 
    echo' <div class="close">X</div> 
    '; 
    echo'<img src="images/guytalk.jpg" width="400" height="450">'; 
    echo'<h2>Hello</h2>'; 
    echo'&nbsp;'; 
    echo'<i>'; 


    switch ($letter1) 
    { 
    <!--PHP Code --> 
     } 
    echo'</i>'; 
    echo'&nbsp'; 
    echo'How do you do?'; 
    echo'<div class="loader"></div> <div id="backgroundPopup"></div>'; 
     echo'</div>'; 

     } 
     else 

我這樣的Javascript遠..

<script>/* event for close the popup */ 
    $("div.close").hover(
        function() { 
         $('span.ecs_tooltip').show(); 
        }, 
        function() { 
         $('span.ecs_tooltip').hide(); 
        } 
       ); 

    $("div.close").click(function() { 
     disablePopup(); // function close pop up 
    }); 

    $(this).keyup(function(event) { 
     if (event.which == 27) { // 27 is 'Ecs' in the keyboard 
      disablePopup(); // function close pop up 
     } 
    }); 

     $("div#backgroundPopup").click(function() { 
     disablePopup(); // function close pop up 
    }); 

    </script> 

我將不勝感激如果您請指出錯誤。非常感謝 ! 我必須提交明天:P!

+0

你是問你disablePopup功能應該是什麼樣子? – Orangepill

回答

0

首先,確保你的jQuery的電話都是$(document).ready()函數內部如下:

<script> 
    $(document).ready(function() { 
     /* All of your code that references the DOM should go here */ 
     $("div.close").click(function() { 
      alert("clicked!"); 
     }); 
    }); 
</script> 

如果你想知道disablePopup功能應該是什麼樣子,它可能是這樣的:

$("#popup").hide(); 

但如果你已經有一個功能,你只是具有無法識別的錯誤,然後嘗試按照以下步驟查明錯誤:

首先,確保您正在瀏覽具有JavaScript調試器的瀏覽器。例如,如果您使用的是Firefox,那麼獲取FireBug擴展。它會告訴你實際的JavaScript錯誤,如果有的話。其次,如果某些工作不能正常工作,則應該嘗試消除所有其他的錯誤來源,並將代碼簡化爲最重要的部分。例如,註釋掉的代碼如下:

<script>/* event for close the popup */ 
    /* 
    $("div.close").hover(
       function() { 
        $('span.ecs_tooltip').show(); 
       }, 
       function() { 
        $('span.ecs_tooltip').hide(); 
       } 
      ); 
*/ 
$("div.close").click(function() { 
    disablePopup(); // function close pop up 
}); 

/* 
$(this).keyup(function(event) { 
    if (event.which == 27) { // 27 is 'Ecs' in the keyboard 
     disablePopup(); // function close pop up 
    } 
}); 

    $("div#backgroundPopup").click(function() { 
    disablePopup(); // function close pop up 
}); 
*/ 
</script> 

這樣一來,如果在你的代碼的其餘部分的錯誤,你可以找出他們在哪裏。最後,用alert("close button clicked")之類的東西替換disablePopup()函數,以驗證點擊處理程序是否正常工作。

如果您執行所有這些步驟,您應該能夠縮小問題範圍。

+0

非常感謝!我會嘗試 –

+0

另外,您應該確保將整個腳本放在$(document).ready()函數中。我已經更新了我的答案,以表明這一點。 – ricovox

0

寫裏面的 「準備」 事件的代碼:

$(document).ready({ 
    //$("div.close").... 
}); 

古德勒克

+0

謝謝!我知道了..我在jQuery中使用了隱藏功能 –