假设我有两个文本框,即textbox1& TextBox2中。如果我在textbox1上键入内容,则应在textbox2上进行突出显示。
我在keyup事件上尝试了这样,但它没有突出显示
$("#textbox1").keyup(function(){
$("#textbox2").effect("highlight"); ...`
如何解决这个问题?
答案 0 :(得分:0)
jQuery UI中的高亮效果并非用于动画文本颜色(它是背景颜色)。所以我认为要实现你想要的,我们可以直接为color属性设置动画,为颜色设置动画,当然我们仍然需要在项目中包含jQuery UI。以下是您可以尝试的代码:
var text2 = $('#textbox2');
$("#textbox1").keyup(function(e){
var currentColor = text2.finish().css('color');
text2.animate({color:'yellow'}, 50)
.animate({color:currentColor}, 100);
});
请注意,要获得currentColor
,我们必须使用finish()
强制所有动画完成,然后才能使用.css()
方法获取颜色。否则currentColor
可能是当前动画的颜色。另请注意,版本finish()
支持1.9
方法。因此,如果您需要使用较低版本的jQuery(例如1.8),我认为您应该初始化currentColor
外部(以及 一次 ){{1处理程序。每当您想要更改onkeyup
的颜色时,您必须更新#textbox2
,尽管我认为更改文本框的颜色并不常见经常使用脚本。