jQuery中是否有一个blink插件来实现以下内容?

时间:2009-09-08 09:20:29

标签: jquery plugins

指定一个$ target,然后它会自动向$ target,

闪现

用于在提交表单时通知用户哪个部分正确填写。

修改

特别是,我想要眨眼的是。

3 个答案:

答案 0 :(得分:2)

你可以制作这样的功能。由于您没有指定它应该如何闪烁或多少次,我将其更改为背景颜色为红色,然后在500毫秒后将其更改回上一个颜色。这会让它看起来像是眨眼。

  function blink($target) {
    // Set the color the field should blink in
    var backgroundColor = 'red';
    var existingBgColor;

    // Load the current background color
    existingBgColor = $target.css('background-color');

    // Set the new background color
    $target.css('background-color', backgroundColor);

    // Set it back to old color after 500 ms
    setTimeout(function() { $target.css('background-color', existingBgColor); }, 500);
  }

如果要调用闪烁功能,请执行以下操作:

function processForm() {
   blink($("#name"));
}

如果您的输入字段为ID 'name'

,则此功能将起作用

闪烁选择元素

HTML:

  <select id="selectList">
    <option>Hello</option>
    <option>World</option>
  </select>

JavaScript(例如准备就绪):

$(function() { 
   blink($("#selectList")) 
});

答案 1 :(得分:0)

我实际上做了类似的事情。我想做一个div闪烁,直到满足条件(点击div并触发其onclick事件)。

    function blink($target) {
        if (X == Y) {
            $target.removeClass("BlinkClass");
        } else {
            $target.addClass("BlinkClass");
            setTimeout(function() { $target.removeClass("BlinkClass"); }, 500);
            setTimeout(function() { blink($target); }, 700);
        }
    }

此函数实际上添加和删除CSS类,直到被if中断。将其应用于具有以下内容的元素:

    blink($("#ItemToBlink"));

答案 2 :(得分:0)

我有点喜欢这个:

function blink($target, $backgroundColor, $interval, $times) {
  // Load the current background color
  var existingBgColor = $target.css('background-color');

  for (var i = 0; i != $times; ++i) {
    // Set the new background color
    setTimeout(function () { $target.css('background-color', $backgroundColor); }, $interval * i * 2);

    // Set it back to old color
    setTimeout(function () { $target.css('background-color', existingBgColor); }, $interval * (i * 2 + 1));
  }
}