以下のコードを分析中、疑問点があり質問させていただきます。
function getSelectionHtml() { var sel, range, node; if (window.getSelection) { sel = window.getSelection(); if (sel.getRangeAt && sel.rangeCount) { range = window.getSelection().getRangeAt(0); var html = '<span style="font-weight:bold;">' + range + '</span>' range.deleteContents(); var el = document.createElement("div"); el.innerHTML = html; var frag = document.createDocumentFragment(), node, lastNode; while ( (node = el.firstChild) ) { lastNode = frag.appendChild(node); } range.insertNode(frag); } } else if (document.selection && document.selection.createRange) { range = document.selection.createRange(); range.collapse(false); range.pasteHTML(html); } }
詳細のコードは下記を参考:
https://jsfiddle.net/negabaro/yb0vu7tg/
var frag = document.createDocumentFragment(), node, lastNode;
fragという変数に値を導入する際にnodeとlastNodeをコンマ区切りで入れておくこの書き方がよくわかりませんでした。
このような書き方の参考できるキーワードやリンクあれば教えていただけますか?
node,lastNodeは現時点で宣言されてないのに
変数代入に含める原理がよくわかりません。
var frag = document.createDocumentFragment();
にすると想定した機能しなくなるため、以下のコードで使われる気がします。
while ( (node = el.firstChild) ) { lastNode = frag.appendChild(node); } range.insertNode(frag);
何か参考できる情報をご教示いただければ助かります
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/03/06 08:31