小编Ano*_*inn的帖子

使用IE双击

我在 IE 中发现了双击问题。

以下是我的 HTML:

<div id="test">Hello World!</div>
Run Code Online (Sandbox Code Playgroud)

还有我的 jQuery:

$('#test').bind('dblclick', function (event) {
    event.stopPropagation();
    $(this).css({'background-color': 'red'});
});
Run Code Online (Sandbox Code Playgroud)

在 IE 中,执行以下操作:

  1. 在 DIV 之外,鼠标按下?鼠标向上?鼠标下来?按住鼠标。
  2. 然后,按住鼠标,将鼠标移入 DIV 并向上移动。

DIV 变为红色,就好像双击事件起源于 DIV。

似乎在 IE 中,双击时双击事件都会被触发?

  1. DIV 中的开始和结束
  2. 在 DIV 外开始,在 DIV 内结束。

然而在 FF/Chrome 中,只有在 DIV 中双击 STARTS 和 ENDS 时才会触发该事件。

对此官方的解释是什么?以及如何让 IE 双击表现得像 FF/Chrome 双击?

jquery double-click internet-explorer-9

3
推荐指数
1
解决办法
6654
查看次数

获取指定长度的字符串

假设有一个数组如下:

$arr = array('foo1234bar', 'foo1234', '1234bar', 'foo12345bar');
Run Code Online (Sandbox Code Playgroud)

我只是需要一个包含的元素4个的总字符.所以除了foo12345bar之外,其他3个元素都是有效的.

因为'\d{4}'会匹配foo12345bar,所以我尝试笨拙地说:

$arr = array('foo1234bar', 'foo1234', '1234bar', 'foo12345bar');
$result = array();
foreach ($arr as $value) {
    preg_match('/\d+/', $value, $match);
    if (strlen($match[0]) != 4) {
        continue;
    }
    $result[] = $value;
}
var_dump($result);    //array('foo1234bar', 'foo1234', '1234bar')
Run Code Online (Sandbox Code Playgroud)

是否有直接匹配的正则表达式(因此if条件可以省略)?先感谢您.

php regex

2
推荐指数
1
解决办法
74
查看次数

标签 统计

double-click ×1

internet-explorer-9 ×1

jquery ×1

php ×1

regex ×1