ボタン(B)をクリックするとメニュー(C)が表示され、クリックすると同じメニュー(C)が表示されます。
私がここで行う必要がある4つのことがあります。
1)BをクリックするとCが表示されます。
2)Aをクリックすると、Cが表示されます。
3)Bをクリックすると、Aが表示されなくなります。
4)Aは初回訪問後に非表示になります。 (ウェルカムメッセージのように)
ただし、初めての訪問(ここではlocalStorageを使用しています)のスクリプトを追加すると動作しないようです。誰がどこが間違っていたか知ることができますか また、私はjavascriptを初めて使っているので、コードをオンラインで探していて、動作しているかどうかを確認するために追加しています。コードを改善する方法があるかどうかはわかりません(今はすべてが分離されています)。ありがとう。ここで
初回訪問後にdivを非表示にする
は、ここに私のコード
<div class="user-menu-group">
<a href="javascript:void()" onclick="hide('1sttime')" class="open-user-menu">B
<div class="notification" id="1sttime">
<p>A</p>
</div>
</a>
<div class="user-menu-bs">C</div>
</div>
である私のスクリプト
<!--first time message-->
<script>
$(document).ready(function() {
if (localStorage.getItem('wasVisited') !== undefined) {
$("#1sttime").hide();
} else {
localStorage.setItem('wasVisited', 1);
$("#1sttime").delay(5000).fadeOut(500);
}
});
</script>
<!--hide A after clicking B-->
<script>
function show(target) {
document.getElementById(target).style.display = 'block';
}
function hide(target) {
document.getElementById(target).style.display = 'none';
}
</script>
<!--hide A after clicking it-->
<script>
(function() {
var elements = document.getElementsByClassName('notification');
for (var i = 0; i < elements.length; i++) {
elements[i].addEventListener('click', function() {
this.style.display = 'none';
});
}
})();
</script>
? – nnnnnn
@nnnnnn申し訳ありませんが、JSのみで行う方法がわかりません。特に初めての訪問部分。 – user3769516