<分区>
我正在为 IE10+ 开发,所以我决定不使用 JQuery。我为 Select、Fadein、FadeOut 等编写了自定义 javascript 函数,并且工作正常。 但我喜欢使用 JQuery 风格的函数(Object.fadeIn()、Object.FadeOut() 等)。
我使用这个代替 JQuery 选择器。
function _(el){
return document.getElementById(el);
}
当我需要选择一个 Dom 对象时,我会使用它。
var myButton = _("button");
当我需要淡入或淡出任何对象时,我会使用它。
function fade(type, ms, el) {
var isIn = type === 'in',
opacity = isIn ? 0 : 1,
interval = 50,
duration = ms,
gap = interval / duration;
if(isIn) {
el.style.display = 'inline';
el.style.opacity = opacity;
}
function func() {
opacity = isIn ? opacity + gap : opacity - gap;
el.style.opacity = opacity;
if(opacity <= 0) el.style.display = 'none'
if(opacity <= 0 || opacity >= 1) window.clearInterval(fading);
}
var fading = window.setInterval(func, interval);
}
下面是淡化按钮的具体代码
fade('out', 500, myButton);
我喜欢这样使用 _( "myButton").fadeIn( 100 );
Update: The trick was to use prototype function for "-" to add additional functionality like fadein(), fadeOut() .