将其设置为“隐藏”之后,XUL元素没有显示出来
-
09-10-2019 - |
题
更新
这是一个更简单的示例,显示故障(它应该在按“ z”之后隐藏IMG,然后在按“ x”之后显示它):
我的test.xul:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="chrome://test/content/test.css" type="text/css"?>
<window id="desktop" width="640" height="480"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<image id="img" src="image.png" flex="1"/>
</window>
我的test.css:
#desktop { -moz-binding: url("chrome://test/content/test.xml#desktop"); }
我的test.xml:
<?xml version="1.0"?>
<bindings xmlns="http://www.mozilla.org/xbl"
xmlns:xbl="http://www.mozilla.org/xbl"
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<!-- Desktop binding & Key handlers -->
<binding id="desktop">
<handlers>
<handler event="keypress" key="Z" >
<![CDATA[
var img = getElementById("img");
if(img)
img.hidden = true;
]]>
</handler>
<handler event="keypress" key="X" >
<![CDATA[
var img = getElementById("img");
if(img)
img.hidden = false;
]]>
</handler>
</handlers>
</binding>
</bindings>
它在隐藏后没有显示出来,任何想法如何修复它?是Xulrunner错误吗?我正在使用Xulrunnet 1.9.2.12运行它。
解决方案
这是Xulrunner 9.0.2.12的问题,它与9.0.2.10合作。
其他提示
使用vbox.setAttribute(“隐藏”,“ true”);和vbox.removeattribute(“隐藏”);
不隶属于 StackOverflow