私はJSが初めてで、「折りたたみ可能」クラスが表示されるように設定されたdivを持つWebサイト用の簡単なブックマークレットを作成しようとしています:none; ワンクリックで、「折りたたみ可能」クラスのすべての要素を表示: ブロックに設定したい。この Web サイトをブラウズして、Google Chrome の JS コンソールに貼り付けると正常に動作する次のコードをまとめることができました。値「ブロック」を返しますが、Web サイトへの影響は私が求めているものです。ただし、URL javascript:mycode... でブックマークレットを作成すると、「ブロック」というテキストを含む空白のページしか表示されません。
これが私のコードです。誰かが私が間違っていることを教えていただければ幸いです:
javascript:function getElementsByClassName(classname, node) {
if(!node) node = document.getElementsByTagName("body")[0];
var a = [];
var re = new RegExp('\\b' + classname + '\\b');
var els = node.getElementsByTagName("*");
for(var i=0,j=els.length; i<j; i++)
if(re.test(els[i].className))a.push(els[i]);
return a;};
var elems = getElementsByClassName('collapseable');
for (var i=0;i<elems.length;i+=1){
elems[i].style.display = 'block';}