基本的に、これを達成するための方法を指し示すことができれば、大変素晴らしいと思います。HTML - メンバー名CLASSが空の場合に "LOGIN"を表示する方法
3番目のSASを使用しています。ログインしたときに、class = "SFnam"というユーザー名が返されます。このユーザー名は、ページの下部に埋め込まれたJSを持つページに表示されます。
現時点では、ログイン時に画面の右上にユーザー名を表示するために、次のようなhtmlを使用します。つまり、「BORIS SMITH」としてログインしますが、ログインしていないユーザーが「ログとして: "。理想的ではない。
class = "SFnam"が空の場合はどうすれば "LOGIN"を表示できますか?ここで
は、私は(Rafaels入力後)を使用してんだよ:
<script type="text/javascript">
window.addEventListener("DOMContentLoaded", function(event) {
var spanElm = document.getElementById('myspan');
if(spanElm.classList.contains('SFnam'))
{
console.log('here');
}
else
{
console.log('here instead');
document.getElementsByTagName('user')[0].innerHTML = "LOGIN";
}
});
</script>
<style>
#loginwrapper {
margin: 0px 0px 0px Opx;
border: none;
cursor: pointer;
}
.logincontainer { text-align: right;}
user {
display: inline-flex;
background-color: #1f7665; color: #fff;
padding:2px 3px 1px 3px;
font-size:8px;
margin-right: 10px;
border-radius: 3px;
font-family: Raleway, Arial, Helvetica, 'Liberation Sans', FreeSans, sans-serif;
}
</style>
<div id="loginwrapper" title ="Click to Log in/out" onclick="window.open('/member-login.html','_self')">
<div class="logincontainer">
<user>Logged in as: <b><span style="text-transform:uppercase;" class="SFnam" id='myspan'></span></b>
</div>
</div>
スパン結果にログインすると次のとおりです。 <スパンクラス= "SFnam">ボリス・スミス</span>の
ログアウトすると、スパンの結果は次のようになります。 < span class = "SFnam"> </span>
これはかなり新しいですが、基本的なコードgなど上記のことがうまく構築されていない場合は謝罪:(。
ご指導いただきありがとうございます。
乾杯 ボリス
EDITED:それは場合に役立ちます?:
<script>(function(){var i,j,a,x;try{x=localStorage.getItem("SF_nam");}catch(e){x="";}
try{for(a=document.querySelectorAll(".SFnam"),i=a.length-1;i>=0;i--)a[i].innerHTML=x?x:"";}catch(e){}
try{for(a=document.querySelectorAll(".SF_li"),i=a.length-1;i>=0;i--)a[i].style.display=x?"":"none";}catch(e){}
try{for(a=document.querySelectorAll(".SF_lo"),i=a.length-1;i>=0;i--)a[i].style.display=x?"none":"";}catch(e){}})();
</script>
超高速応答のおかげでラファエル!素晴らしい!私は上記の通り、あなたが「ログアウトした」テキストを「ログインしたとき:」のままにしておいたのと同じように実装しました。 「Logged in as:」と「Logis in as:Boris Smith」の間で変更されますが、「Logged in as:」の代わりにLOGINは表示されません。私が何か間違っていたかどうか分からない?おそらくSFnamは本当に空ではありませんか?ログインしたときにコンソールの結果を見ると、ログアウトしたときにスパンが空に見えるので、分かりません。私は再び私のコードを再投稿することができますか? – BorisNZ
ブラウザのインスペクタを使用してスパンを見つけ、ログインしてログインしていない場合の状況を確認してください。可能であれば、両方の状況でどのように見えるかを投稿し、質問を編集し、 –
私はあなたの提案とFFで見られるように掲載されたスパン結果でコードを更新し、おそらく変更可能な第三者によって提供されたリスナースクリプトを追加しましたか? – BorisNZ