Javascript Firefox插件:插入大量HTML的最佳方式是什么?
虽然Javascript Firefox插件:插入大量HTML的最佳方式是什么?,javascript,xml,firefox,firefox-addon,firefox-addon-restartless,Javascript,Xml,Firefox,Firefox Addon,Firefox Addon Restartless,虽然createElement()和appendChild()是首选方法,但对于大块HTML来说,它可能会变得单调乏味 以下是一个例子: <input type="button" name="addbbcode16" id="addbbcode16" value="Quote=" onclick="bbstyle(16)" class="first-button" /> <input type="button" value="RemoveTag" onclick="makeC
createElement()
和appendChild()
是首选方法,但对于大块HTML来说,它可能会变得单调乏味
以下是一个例子:
<input type="button" name="addbbcode16" id="addbbcode16" value="Quote=" onclick="bbstyle(16)" class="first-button" />
<input type="button" value="RemoveTag" onclick="makeChange('remove')" />
<input type="button" value="toLower" onclick="makeChange('lower')" />
<input type="button" value="toUpper" onclick="makeChange('upper')" />
<input type="button" value="TitleCase" onclick="makeChange('titlecase')" class="last-button" />
<br style="clear: both;" />
<input type="button" accesskey="b" name="addbbcode6" id="addbbcode6" value="B" onclick="bbstyle(6)" style="font-weight: bold;" class="first-button" />
<input type="button" accesskey="i" name="addbbcode8" id="addbbcode8" value="i" onclick="bbstyle(8)" style="font-style: italic;" />
<input type="button" accesskey="u" name="addbbcode10" id="addbbcode10" value="u" onclick="bbstyle(10)" style="text-decoration: underline;" />
<input type="button" accesskey="l" name="addbbcode12" id="addbbcode12" value="List" onclick="bbstyle(12)" />
<input type="button" accesskey="o" name="addbbcode14" id="addbbcode14" value="List=" onclick="bbstyle(14)" class="last-button" />
Font colour:
<select name="addbbcode18" onchange="makeChange('[color=' + this.form.addbbcode18.options[this.form.addbbcode18.selectedIndex].value+ ']', '[/color]'); this.selectedIndex=0;">
<option value="#">Default</option>
<option style="color: darkred;" value="darkred">Dark Red</option>
<option style="color: red;" value="red">Red</option>
<option style="color: orange;" value="orange">Orange</option>
<option style="color: brown;" value="brown">Brown</option>
<option style="color: yellow;" value="yellow">Yellow</option>
<option style="color: green;" value="green">Green</option>
<option style="color: olive;" value="olive">Olive</option>
<option style="color: cyan;" value="cyan">Cyan</option>
<option style="color: blue;" value="blue">Blue</option>
<option style="color: darkblue;" value="darkblue">Dark Blue</option>
<option style="color: indigo;" value="indigo">Indigo</option>
<option style="color: violet;" value="violet">Violet</option>
<option style="color: white;" value="white">White</option>
<option style="color: black;" value="black">Black</option>
</select>
Font size:
<select name="addbbcode20" onchange="makeChange('[size=' + this.form.addbbcode20.options[this.form.addbbcode20.selectedIndex].value + ']', '[/size]'); this.selectedIndex=2;">
<option value="7">Tiny</option>
<option value="9">Small</option>
<option value="12" selected="selected">Normal</option>
<option value="18">Large</option>
<option value="24">Huge</option>
</select>
字体颜色:
违约
深红色
红色
橙色
棕色的
黄色的
绿色
橄榄树
青色
蓝色
深蓝色
靛蓝
紫罗兰色
白色
黑色
字体大小:
微小的
小的
正常的
大的
巨大的
有其他选择吗?它是否可以制作成XUL文档/片段并插入
我知道有些零件可以用循环创建。不希望使用
innerHTML
。除了实际动态生成代码(使用一些循环)或使用。innerHTML
(在性能方面不是最好的主意,也容易出现安全漏洞,因此不鼓励),您可以将其放入和XHTML XML文档中:
.importNode
或.adoptNode
(深度)导入目标文档.appendChild
,.insertBefore
)Tnx零。。。我差不多就是这么想的。我真正想知道的是,是否有可能自动导入它。例如,我可以把它放在一个
overlay.xul
中,并将它的显示设置为none
(这样FF就插入它而不是手动执行XHR等)。那就在我需要的时候抓住它。问题是restartlesss插件中没有覆盖(附言,我几乎总是跳出框框)是的。如果这不是标记为restartless,我会提到将内容放入覆盖层您正在编写无重启加载项。没有任何自动操作;)——还有,我怎么知道你真正想看什么?我不是一个读心术的人我和往常一样,在决定行动方案之前,正在探索所有的选择。我想确保我没有错过任何东西。也许最好用“我真正希望的……”来形容它: