【备忘】JavaScript错误提示及解决!

1、

错误提示:Bad escaping of EOL. Use option multistr if needed.

解决方案:在代码前加入注释:/*jshint multistr: true */

参考:http://stackoverflow.com/questions/14054021

【备忘】文本框清除选择什么的

需求场景:

一个只读的input文本框,存在目的就是让用户复制其中的内容,,虽然可以用一键复制的插件,,但是对于文本框自身还是希望做些处理:

1、鼠标移入时候选中文本——onmouseover="this.select();"

2、点击文本框时候仍然保持选中状态——然而直接用onclick="this.select()" 时并不会看到直观的点击反馈←←至少我自己感觉略不爽——所以解决是加个延时onclick="that = this;setTimeout(function(){that.select()},150);"

【备忘】按钮倒计时效果

按钮点击后禁用5秒

$(".xnxf-btn").removeAttr("disabled"); //按钮禁用时刷新并不会恢复?
$(".xnxf-btn").click(function () {
    var t = 5;
    var tempHtml = $(".xnxf-btn").html();
    $(this).attr("disabled", "disabled");
    $(this).html(tempHtml + "(" + t + "s" + ")");
    var n = setInterval(function () {
            t -= 1;
            $(".xnxf-btn").html(tempHtml + "(" + t + "s" + ")");
            if (t == 0) {
                $(".xnxf-btn").removeAttr("disabled");
                $(".xnxf-btn").html(tempHtml);
                clearInterval(n);
            }
        }, 1000);
    // do sth
});

【备忘】一个和缓存有关的算法

在研究缓存失效时间时开的一个脑洞,,虽然不是很清楚有什么实用价值。。

var m;
var lastm;
var lastn;

for (var n = 0; n <= 50; n++) {
  if (!m) {
    m = n + 5;
    lastn = n - 1;
  }
  if (m <= n) {
    if (n !== 11 && n !== 12 && n !== 21) {
    // if (1 == 1) {
      fnLog([m - n, m, n, n - lastn, "do sm thin"]);
      lastm = m;
      m = n + n - lastn;
      lastn = n + n - lastm;
    } else {
      fnLog([m - n, m, n, n - lastn, "skip"]);
    }
  } else {
    fnLog([m - n, m, n, n - lastn]);
  }
}
// ----------------------------
function fnLog(n) {
  if (Object.prototype.toString.call(n) === '[object Array]') {
    a = n.join(" , ");
  }
  document.getElementById('debug').innerHTML += a + "<br />";
  console.log(a);
}

【备忘】JQuery闪烁效果

代码:

$.fn.flash = function (a) {
// 切换可见状态(设定竟然不是变成透明,不过本例中没有影响)
$(this).animate({
opacity: 'toggle'
}, 500, function () {
// console.log($(this).css('display')),
// 当前状态为不可见时自调用使其可见
$(this).css('display') == 'none' && $(this).flash(0)
}),
a > 1 && $(this).flash(a - 1);
};
// 调用
$('#xn,.xf').flash(3);

然后,如果不考虑初始或最终的可见状态的话下边这样就可以: