在 HTA 中单击时使按钮变色?
Make a button alternate colours when clicked in HTA?
我正在制作一个 HTA 应用程序,其中包含按钮,我希望按钮在单击时改变颜色(例如 orange/green),我找到了一个与 .[=31= 一起使用的脚本] 扩展名,但当 运行 带有 .hta 扩展名时出现脚本错误。请告诉如何修复。 (是的,我需要坚持使用 hta)
注意,这是一个 HTML Application,如果下面的代码 运行s 在标准浏览器中它会正常工作
JS
jQuery(function($) {
$('.select').click(function() {
$(this).toggleClass('highlight')
})
})
CSS
.select {
background: rgb(255, 145, 0);
}
.select.highlight {
background: rgb(26, 255, 0);
}
HTML
<body>
<input type="button" name="Ignore Select" value="Ignore Select" id="select" class="select" />
<input type="button" name="Ignore Delete" value="Ignore Delete" id="select1" class="select" />
<input type="button" name="Ignore Insert" value="Ignore Insert" id="select2" class="select" />
<input type="button" name="Ignore Update" value="Ignore Update" id="select3" class="select" />
<input type="button" name="Ignore Sleep" value="Ignore Sleep" id="select4" class="select" />
</body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="my.js"></script>
编辑:错误图片,https://imgur.com/a/ex0mw9P
为什么不这样做:删除开头的 jQuery 部分并将其替换为
$(document).ready(function(){
$('.select').click(function() {
$(this).toggleClass('highlight')
})
})
您的 HTA 不会 运行 那个版本的 jQuery 的主要原因是因为默认情况下 HTA 运行 处于兼容模式,如 Internet Explorer 7,并且不会支持 addEventListeners
.
等方法
如果您将此警报添加到您的 my.js
代码中,您将看到打印了哪些用户代理。
alert(window.navigator.userAgent);
因此,要使其正常工作,您需要使用 IE7 兼容的方法,或更改渲染引擎。
要更改引擎,请在您的 <head>
中添加此元标记
<meta http-equiv="x-ua-compatible" content="ie=edge" />
我正在制作一个 HTA 应用程序,其中包含按钮,我希望按钮在单击时改变颜色(例如 orange/green),我找到了一个与 .[=31= 一起使用的脚本] 扩展名,但当 运行 带有 .hta 扩展名时出现脚本错误。请告诉如何修复。 (是的,我需要坚持使用 hta)
注意,这是一个 HTML Application,如果下面的代码 运行s 在标准浏览器中它会正常工作
JS
jQuery(function($) {
$('.select').click(function() {
$(this).toggleClass('highlight')
})
})
CSS
.select {
background: rgb(255, 145, 0);
}
.select.highlight {
background: rgb(26, 255, 0);
}
HTML
<body>
<input type="button" name="Ignore Select" value="Ignore Select" id="select" class="select" />
<input type="button" name="Ignore Delete" value="Ignore Delete" id="select1" class="select" />
<input type="button" name="Ignore Insert" value="Ignore Insert" id="select2" class="select" />
<input type="button" name="Ignore Update" value="Ignore Update" id="select3" class="select" />
<input type="button" name="Ignore Sleep" value="Ignore Sleep" id="select4" class="select" />
</body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="my.js"></script>
编辑:错误图片,https://imgur.com/a/ex0mw9P
为什么不这样做:删除开头的 jQuery 部分并将其替换为
$(document).ready(function(){
$('.select').click(function() {
$(this).toggleClass('highlight')
})
})
您的 HTA 不会 运行 那个版本的 jQuery 的主要原因是因为默认情况下 HTA 运行 处于兼容模式,如 Internet Explorer 7,并且不会支持 addEventListeners
.
如果您将此警报添加到您的 my.js
代码中,您将看到打印了哪些用户代理。
alert(window.navigator.userAgent);
因此,要使其正常工作,您需要使用 IE7 兼容的方法,或更改渲染引擎。
要更改引擎,请在您的 <head>
<meta http-equiv="x-ua-compatible" content="ie=edge" />