此CSS表达式
P {
background-color: expression((new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00");
}
可以被召唤数千次
但这种方法意味着
<style>
P {
background-color:expression(altBgColor(this));
}
</style>
<script type="text/javascript">
function altBgColor(elem) {
elem.style.background = new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00";
}
</script>
意味着它不会。为什么呢?
答案 0 :(得分:1)
将<style>
更改为<script>
<script type="text/javascript">
function altBgColor(elem) {
elem.style.background = new Date().getHours()%2 ? "#B8D4FF" : "#F08A00";
}
</script>
答案 1 :(得分:0)
“对于脚本,动态属性可以是任何合法的JScript或Microsoft Visual Basic Scripting Edition(VBScript)语句。” MSDN说。 JScript不是JavaScript。另外,一件好事就是试图完全远离CSS表达式:)
答案 2 :(得分:0)
您期望发生什么?
第一次调用动态表达式时,会覆盖包含该表达式的背景属性。