繁体   English   中英

从单独的XUL文件引用ID

[英]Referencing an id from separate XUL files

如果我有两个不同的XUL文件,一个中的javascript是否可以引用另一个中定义的XUL ID? 我想在单独的xul文件中使用javascript在另一个文件中编辑XUL。

您可以引用XUL文件中的任何JS文件,并且如果要引用另一个XUL文件中的相同JS文件,则将相同。

例如:

<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="chrome://global/skin/" ?>
<?xml-stylesheet type="text/css"href="chrome://hello/skin/browserOverlay.css" ?>

<!DOCTYPE overlay SYSTEM
  "chrome://hello/locale/browserOverlay.dtd">

<overlay id="xulschoolhello-browser-overlay"
  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">

  <script type="application/x-javascript"
    src="chrome://hello/content/browserOverlay.js" />
    <script type="application/x-javascript" src="chrome://hello/content/javaLoader.js" />
    <script type="application/x-javascript" src="chrome://hello/content/window.js" />

</overlay>

如果要在XUL中使用JS,可以这样做,但是在这种情况下,您不能将此JS函数链接到另一个XUL。

在XUL文件中输入以下内容:

<script type="application/x-javascript">
<![CDATA[
    // your code here
]]>
</script>

我建议单独使用JS文件,并且您可以将它们链接到任意数量的XUL文件,如上所述。

参考: https : //developer.mozilla.org/en/Building_an_Extension https://developer.mozilla.org/en/Setting_up_extension_development_environment

您似乎正在寻找的是XUL覆盖层 这些叠加层可以注册到您的chrome.manifest文件中 ,并允许对其他XUL文档进行修改。 例如,大多数Firefox扩展程序都为chrome://browser/content/browser.xul (浏览器主窗口)注册一个覆盖图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM