javascript
  • jquery
  • html
  • onclick
  • 2013-05-11 222 views -3 likes 
    -3

    重寫完整的Javascript。Javascript OnClick函數不工作

    的Javascript

    <div id="PopUp1" style="display: none; color: #FFFFFF;"></div> 
    <div id="Mask"></div> 
    <script type="text/javascript"> 
    var Design = '<p>Design!!!!!</p><input type="submit" value="Close" onClick="Close(Design,1)" />'; 
    
    function PopUp(htmlstring, id) { 
        $('#PopUp' + id).fadeIn('slow'); 
        $('#Mask').fadeIn('slow'); 
    } 
    
    function Close(htmlstring, id) { 
        $('#PopUp' + id).fadeOut('slow'); 
        $('#Mask').fadeOut('slow'); 
    } 
    
    $('#Mask').click(function() { 
        $('#Mask').fadeOut('slow'); 
        $('#PopUp' + id).fadeOut('slow'); 
    }); 
    </script> 
    

    HTML

    <td width="100" align="center" onClick="PopUp(Design,1)">Designs</td> 
    

    現在的面膜顯示了與VAR設計。但瓦爾沒有顯示?

    +0

    你在console.log中看到了什麼錯誤,如果有的話? – Xotic750 2013-05-11 16:26:46

    +2

    您正在加載jQuery兩次。可以使用jquery-latest.js或jquery-1.8.3.js,但不能同時使用。此外,您稍後編輯了'$'s代碼 - 是否仍然不適用於它們?此外,HTML也是無效的:如果不在td或th內,則不能在表格中放置div。 – JJJ 2013-05-11 16:28:34

    +0

    TD在桌子裏面,只是我用onClick複製了編碼線! – 2013-05-11 16:34:45

    回答

    0

    您使用的是jQuery,但$除外。還要確保你在你的<head>中包含jQuery。

    function PopUp(htmlstring,id) { 
        $('#PopUp'+id).fadeIn('slow'); 
        $('#Mask').fadeIn('slow'); 
    } 
    function Close(htmlstring,id) { 
        $('#PopUp'+id).fadeOut('slow'); 
        $('#Mask').fadeOut('slow'); 
    } 
    

    而且,雖然這並不重要,使用onClick代替onclick

    <input type="submit" value="Close" onClick="Close(Design,1)" /> 
    
    +0

    啊!我想知道什麼是語法!順便說一句:真的onClick?我還沒有看到它。 – 2013-05-11 16:19:46

    +2

    不,不要在已經有jQuery的情況下使用內聯onClick。取而代之的是分配(「點擊」)負載 – mplungjan 2013-05-11 16:29:14

    +0

    我應該只是做一個var?對於 實例: var Design ='

    設計!


    '; – 2013-05-11 16:32:43

    0

    請始終使用jQuery,如果你擁有它,只加載一次!

    是否有任何具體原因使用提交按鈕?如果不是其類型=「按鈕」

    <!DOCTYPE html> 
    <html> 
    <head> 
    <title>Test popup</title> 
    <script src="http://code.jquery.com/jquery-latest.js"></script> 
    <script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script> 
    <script> 
    function PopUp(htmlstring,id) { 
        $('#PopUp'+id).fadeIn('slow');  
        $('#Mask').fadeIn('slow'); 
    } 
    function Close(htmlstring,id) { 
        $('#PopUp'+id).fadeOut('slow'); 
        $('#Mask').fadeOut('slow'); 
    } 
    $(function() { 
        $("#closeButton").on("click",function() { 
        Close('Design',1); // not sure what htmlstring is 
        }); 
        $("#openButton").on("click",function() { 
        Popup('Design',1); // not sure what htmlstring is 
        }); 
    }); 
    </script> 
    </head> 
    <body> 
    . 
    . 
    . 
    </body> 
    </html> 
    
    0

    我不知道如果我正確理解你的問題,但如果我這樣做,那麼你想要的文字,那是你的可變設計裏面彈出式窗口中顯示。

    您使用參數htmlstring設置了您的函數PopUp,但您從不使用它。所以也許這會有所幫助:

    function PopUp(htmlstring, id) { 
        $('#PopUp' + id).html(htmlstring); 
        $('#PopUp' + id).fadeIn('slow'); 
        $('#Mask').fadeIn('slow'); 
    } 
    
    相關問題