Jquery闪烁/用css改变边框颜色

And*_*ewC 4 jquery

没有使用任何其他jquery插件我想继续闪烁/改变div的边框颜色.所以它应该以白色开始,然后在1秒后变为橙色,然后重复.

Dav*_*und 11

CSS:

#my-div { border: 1px solid white; }
#my-div.orange-border { border: 1px solid #f93; }
Run Code Online (Sandbox Code Playgroud)

HTML:

<div id="my-div"></div>
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

var flashInterval = setInterval(function() {
    $('#my-div').toggleClass('orange-border');
}, 1000);
Run Code Online (Sandbox Code Playgroud)

要停止闪烁:

window.clearInterval(flashInterval);
Run Code Online (Sandbox Code Playgroud)

无闪光解决方案:

$('#my-div').css({ border: '1px solid white' });

setInterval(function() {
    var isWhite = $('#my-div').css('border-color') == 'rgb(255, 255, 255)';
    $('#my-div').css({ 'border-color' : isWhite ? '#f93' : '#fff' });
}, 1000);?
Run Code Online (Sandbox Code Playgroud)

rgb比较看起来有点hackish.有一个你来回切换的标志可能比较简洁,也许是一个数据属性:

$('#my-div').css({ border: '1px solid white' }).data('white', true);

setInterval(function() {
    var isWhite = $('#my-div').data('white');
    $('#my-div').css({ 'border-color' : isWhite ? '#f93' : '#fff' }).data('white', !isWhite);
}, 100);?
Run Code Online (Sandbox Code Playgroud)