0

をクリックするとdiv、開くはずです。もう一度クリックすると、が閉じますdiv。これについて私を助けてください。

<html>
    <head>
        <script type="text/javascript">
        var bool = 0;
            function showDiv(){
                if(bool==1){
                    bool=0;
                    document.getElementById(show).style.visibility = "hidden";
                }else if(bool==0){
                    bool=1;
                    document.getElementById(show).style.visibility = "visible";
                }
            }
        </script>
    </head>
    <body>
        <input type="button" value="click" onclick="showDiv();" />

        <div="show">
            <p>it is okay it is okay it is okay it is okay it is okay it is okay it is okay it is okay</p>
        </div>

    </body>
</html>
4

6 に答える 6

1

idの引数の引用符がありませんgetElementById()

document.getElementById('show').style.visibility = "hidden";

また、id属性名がありません<div>

 <div="show">

これである必要があります:

<div id="show">

jsFiddle

于 2012-04-14T19:24:08.537 に答える
1

これを試して:

HTML

<button id="myButton">Show DIV</button>
<div id="show" class="hidden">
    <p>it is okay </p>
</div>

CSS

.hidden
{
  display:none;
}

JS

$('#myButton').click(function () {
        $("#show").slideToggle();
        $(this).text($(this).text() == 'Show DIV' ? 'Hide DIV' : 'Show DIV');
        return false;
});

これがjsfiddleです:http://jsfiddle.net/mgrcic/RbjLJ/

于 2012-04-14T19:34:31.923 に答える
0

あなたはいくつかの間違いを犯しました:

  1. <div="show">間違っている。正しい方法は<div id="show">です。
  2. 表示と非表示の手段が必要な場合は、最初にdivのCSSをに設定しますvisibility:hidden;
  3. にアポストロフィがありませんdocument.getElementById('show');

これを試して:

    <html>
        <head>
            <script type="text/javascript">
            var bool = 0;
                function showDiv(){
                    if(bool==1){
                        bool=0;
                        document.getElementById('show').style.visibility = "hidden";
                    }else if(bool==0){

                        bool=1;
                        document.getElementById('show').style.visibility = "visible";
                    }
                }
            </script>
        </head>
        <body>
            <input type="button" value="click" onclick="showDiv();" />

            <div id="show" style=" visibility:hidden;">
                <p>it is okay it is okay it is okay it is okay it is okay it is okay it is okay it is okay</p>
            </div>

        </body>
    </html>
于 2012-04-14T21:54:42.683 に答える
0

あなたが言及しているとき

document.getElementById(show).style.visibility

変数showを参照していますが、文字列として取得しようとしているため、引用符で囲む必要があります

document.getElementById('show').style.visibility
于 2012-04-14T19:27:07.900 に答える
0

あなたはdivを間違って書いています。Id 属性の値として「show」を入力する必要があります。

<div id="show"> </div>

jQuery を使用している (タグを付けた) 場合は、jQuery を使用して、目立たない方法でよりクリーンに処理してみませんか?

$(function(){       
    var bool = 0;
    $("input[type='button']").click(function(){        
        if(bool ==0)
        {
            bool =1
            $("#show").hide();
        }
        else
        {
            bool =0
            $("#show").show();
        }
    });    
});

サンプルは次のとおりです。http://jsfiddle.net/sHsuh/10/

このスクリプトは、ページ内のすべてのボタン要素に関数をバインドすることに注意してください。したがって、ボタンに Id を追加し、それにバインドすることで、より具体的になります。

$("#myButtonId").click(function(){
  //code goes here
});
于 2012-04-14T19:35:41.600 に答える
0

これが解決策です。指定しないと要素を取得できませんでしたdiv id="theid"

<html>
    <head>
        <script type="text/javascript">
        var bool = 0;
            function showDiv(){
            var elem = document.getElementById('show');
            console.log(elem);
                if(bool==1){
                    bool=0;
                    elem.style.visibility = "hidden";
                }else if(bool==0){
                    bool=1;
                    elem.style.visibility = "visible";
                }
            }
        </script>
    </head>
    <body>
        <input type="button" value="click" onclick="showDiv();" />

        <div id="show">
            <p>it is okay it is okay it is okay it is okay it is okay it is okay it is okay it is okay</p>
        </div>

    </body>
</html>
于 2012-04-14T19:30:50.470 に答える