Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/479.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
缩短javascript/jquery函数_Javascript_Jquery_Function - Fatal编程技术网

缩短javascript/jquery函数

缩短javascript/jquery函数,javascript,jquery,function,Javascript,Jquery,Function,我有一个javascript函数,可以使指定的文本在两种颜色(灰色)和运行该函数时设置的颜色值之间交替 这是我使用的代码。职能: function flashtext(ele,col) { var tmpColCheck = document.getElementById( ele ).style.color; if (tmpColCheck === 'gray') { document.getElementById( ele ).style.color = col; } el

我有一个javascript函数,可以使指定的文本在两种颜色(灰色)和运行该函数时设置的颜色值之间交替

这是我使用的代码。职能:

function flashtext(ele,col) {
var tmpColCheck = document.getElementById( ele ).style.color;

  if (tmpColCheck === 'gray') {
    document.getElementById( ele ).style.color = col;
  } else {
    document.getElementById( ele ).style.color = 'gray';
  }
} 
然后,对于我所做的每个独特的flash(内容是动态生成的):

数字
flashingtext
flashingtext2
随着每个数字的增加而增加,颜色设置为它将替换的颜色,在本例中为白色

然后

闪现给我
是否有任何方法可以精简整个代码,这样我就不必为每个发生的实例添加新的javascript。这样我就可以放下函数,然后在span标记中定义其余的?差不多

<span id=flashingtext data=#ffffff> flash white </span>
闪烁白色
我给的颜色总是在那和灰色之间交替

基本上,切掉中间的部分


注意:如果使用jquery更方便,也可以使用jquery。

使用jquery,您可以在元素上切换类,并让每个类设置一种颜色

setTimeout(function() {
$('#flashText').toggleClass('gray');
}, 500);

如果您希望将相同的代码应用于所有实例,则为元素提供一个公共类,例如“flashingtext”,以便您可以将它们作为一个组进行选择,但可以使用内联样式设置各个颜色:

<span class='flashingtext' style='color: white'>flash me</span>
它使用
!重要信息
,以便它可以覆盖内联样式

然后,您的函数可以选择所有具有“flashingtext”类的元素,并打开或关闭“gray”:

setInterval(function() {
   $(".flashingtext").toggleClass("gray");
}, 500);
演示:


如果您需要为跨距指定一个
id
,以便您可以单独选择它们用于其他用途,那么请继续,但是对于这种颜色的东西,您不需要。

那么,它们会自动闪烁吗?你想控制这些闪光吗?或者它们一直闪烁?我真的不需要控制它们,只是每500次闪烁一次。我使用php服务器端控制它们是否出现。
<span class='flashingtext' style='color: white'>flash me</span>
span.gray { color : gray !important;}​
setInterval(function() {
   $(".flashingtext").toggleClass("gray");
}, 500);