-1

クリックすると Div のコンテンツが変わるリンクがいくつかあります。現在、リンクの 1 つに新しいコンテンツがあり、次のように既存の div を新しいものに置き換えようとしています。

var terms = document.getElementsByClassName("tos")[0];
var faqs = document.getElementsByClassName("faq")[0];
$(terms).click(function(){
 $("#menuitem").hide();
 $("#newterms").show();
});
$(faqs).click(function(){
 $("#newterms").hide();
 $("#menuitem").show();
});

「terms」以外のリンクがクリックされたときに #newterms を非表示にするという考え方です。

上記のコードは #newterms を完全に非表示にし、「terms」をクリックしても新しい div を表示しません。私は JQuery に詳しくなく、何が間違っているのかわかりません。あなたの誰かがこれで私を助けてくれるなら、それは素晴らしいことです.

申し訳ありませんが、ここにHTMLがあります

<div id="contenttext">
 <div id="menuitem"></div>
 <div id="newterms">
  <p id="terms_header">Header</p>
  <div id="termsconds">Terms</div>
 </div>
</div>

いくつかの検索を行ったところ、クラス名はこの方法でアクセスできることがわかりました (上記)。

4

3 に答える 3

1

jQueryセレクターを使用してください。これは動作中のJSFiddleです。jQuery を介して要素を選択する場合、#または「ハッシュ」はID属性用であり.、「ピリオド」はclass属性用です。

そう$('.class-name');$('#id-name');

http://jsfiddle.net/GdSWX/1/

HTML

<a class="tos" href="#">TOS</a>
<br>
<a class="faq" href="#">FAQ</a>

<div id="contenttext">
    <div id="menuitem">menu item</div>
    <div id="newterms">
        <p id="terms_header">Header</p>
        <div id="termsconds">Terms</div>
    </div>
</div>

Javascript

var terms = $('.tos');
var faqs = $('.faq');

$(terms).click(function () {
    $("#menuitem").hide();
    $("#newterms").show();
});

$(faqs).click(function () {
    $("#newterms").hide();
    $("#menuitem").show();
});

最初に 2 つのうちの 1 つを非表示にする場合は、ドキュメントが完全にロードされた後に非表示/表示を実行します。

$(document).ready(function() {
    $("#newterms").hide();
    $("#menuitem").show();
});
于 2013-10-07T17:53:06.017 に答える
0

ページの読み込み時に非表示にしたい div を非表示にして、この方法を試してください

$(document).ready(function(){
   $("#newterms").hide();

$(".tos").click(function () {
    $("#menuitem").hide();
    $("#newterms").show();
    return false;
});

$(".faq").click(function () {
    $("#newterms").hide();
    $("#menuitem").show();
    return faslse;
});

});

于 2013-10-07T18:29:23.357 に答える
0

jQuery を使用している場合は、getElementsByClassName の使用を放棄する必要があります。これで問題が解決する場合があります。

$('.tos').click(function(){
    $("#menuitem").hide();
    $("#newterms").show();
});
$(.faq).click(function(){
    $("#newterms").hide();
    $("#menuitem").show();
});
于 2013-10-07T17:46:12.757 に答える