私はWeb開発には少し新しく、私は誰かが私のためにこれに答えることを望んでいました。アンカークリックに基づいてInnerHTMLを変更します
Facebookメッセンジャーに似た「Web Messenger」のプロトタイプを構築しています。ウィンドウがロードされたときにアンカータグのULが埋め込まれたサイドバーがあり、それはthisのように見えます。ここで私は、現在のチャットに関するいくつかの詳細が表示されますが、当面は、単に、と同じようにチャットの名前を表示するページの上部に本部を持っていること
var toAdd = document.createDocumentFragment();
var newUL = document.createElement('ul');
newUL.id = 'menu-content';
newUL.className = 'menu-content collapse out';
for(var i = 0; i < 5; i++){
var newLI = document.createElement('li');
var newA = document.createElement('a');
newA.id = 'chat' + i;
newA.setAttribute('href', "#");
newA.innerHTML = "Chat" + (i + 1);
newLI.appendChild(newA);
newUL.appendChild(newLI);
}
toAdd.appendChild(newUL)
document.getElementById("menu-list").appendChild(toAdd);
ためのコードがありますアンカータグに私は一度に20 +サイドバー上のチャットを持つことができるので、これはのように思えるしかし今、別のStackOverflowに基づいて
は、アンカータグからJS関数を呼び出すための正しい方法は
var c0 = document.getElementById("chat0");
//Set code to run when the link is clicked
// by assigning a function to "onclick"
c0.onclick = function(id) {
//Change Title Name here
//Do other stuff in the future
return false;
}
です投稿します繰り返し書くたくさんのコード。
これを行うより良い方法はありますか?
ありがとうございます! create forループの中で 'newA.addEventListener( 'click'、chatClick)'を追加しました。また、 'function chatClick(){console.log(" test ");}'をJSファイルに追加しました。タグをクリックすると、コンソールに何も表示されません。私は何か見落としてますか? –
'addEventListener'の最後に'、false'を追加して、私の更新を確認してください。 –