我正在制作一个HTA应用程序,并且试图添加一个选项来更改配色方案。我一直在尝试在标记中使用变量。例如:Color1,而不是黑色等。但是,一切都只是默认颜色
这是我在vbs部分中写的内容的一部分:
Sub changecolor
Colorbutton = gray
Colorbuttontext = black
Colortextbox = black
Colortext = aqua
End sub
这是我拥有的HTML的摘要:
<input type="text" color="Colortext">
<input type="button" color="Colorbutton">
我已经有一个使用onChange =“ changecolor”的下拉菜单,并且已经过测试,我知道它进入了子菜单
我曾尝试将Colortext.value或Colorbutton.value放进去,但所有内容仍更改为默认颜色。标签不识别该变量,因此仅跳过该变量即可还原为默认颜色?
如果有人知道如何解决此问题,请告诉我,谢谢!
附言:我是一个新手,所以如果您能使答案尽可能愚蠢,那就太好了,再次感谢
您需要使用DOM API来操纵网页,并且元素的视觉外观由CSS控制,尽管某些旧的表示属性仍然可以工作(例如<body background>
)。
与VBScript的有限键入系统相比,我建议在所有情况下都尽可能在VBScript上使用JavaScript,这不仅是为了表达更具表现力的语法,而且是由于其基于原型的特性所带来的更大的灵活性和编程选项。
您可以像VBScript一样在HTA中使用JavaScript,只需使用<script type="text/javascript">
代替即可<script language="VBScript">
。
请注意,您不能在HTA中可靠地使用“边缘模式”,因此过去几年浏览器中的新开发将无法可靠地工作,例如新的CSS3效果或DOM更改。在Edge模式下,HTA Shell将忽略HTA特定的标记,因此在Edge模式下无法设置自定义窗口图标或标题栏文本(我认为这是一个错误,但是AFAIK Microsoft没有计划修复这个)。
在JavaScript中,您可以这样做:
<script type="text/javascript">
window.onload = function() {
var colorButton = document.getElementById("colorButton");
colorButton.onclick = function() {
var textInput = document.getElementById("textInput");
textInput.style.color = "black"; // foreground (text) color
textInput.style.backgroundColor = "blue";
};
};
</script>
<input type="text" id="textInput" />
<button id="colorButton">Click me</button>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句