小编Bri*_*汤莱恩的帖子

在JavaScript中输入按键事件

我有form两个文本框,一个选择下拉菜单和一个单选按钮.当enter按下键时,我想调用一个javascript函数(用户定义),但是当我按下它时,表单就会被提交.

如何formenter按下键时阻止提交?

javascript forms enter keypress dom-events

304
推荐指数
10
解决办法
103万
查看次数

onKeyPress Vs. onKeyUp和onKeyDown

这三个事件有什么区别?谷歌上搜索我发现了

的KeyDown当用户按下一个键触发事件.

KEYUP当用户释放的关键是触发事件.

按键响应事件被触发时,用户按下&释放的关键.(onKeyDown后跟onKeyUp)

我理解前两个,但KeyPressKeyUp不一样吗?(或者可以在没有按下(KeyDown)的情况下释放密钥(KeyUp)吗?)

这有点令人困惑,有人可以为我清除这个吗?

javascript dom dom-events

295
推荐指数
9
解决办法
24万
查看次数

如何在C预处理器中可靠地检测Mac OS X,iOS,Linux,Windows?

如果有一些跨平台的C/C++代码应该在Mac OS X,iOS,Linux,Windows上编译,我如何在预处理器进程中可靠地检测它们?

c c++ cross-platform c-preprocessor os-detection

291
推荐指数
3
解决办法
14万
查看次数

jQuery回调图像加载(即使图像被缓存)

我想要做:

$("img").bind('load', function() {
  // do stuff
});
Run Code Online (Sandbox Code Playgroud)

但是从缓存加载图像时不会触发加载事件.jQuery文档提出了一个修复此问题的插件,但它不起作用

jquery image jquery-load jquery-events

282
推荐指数
8
解决办法
36万
查看次数

无法理解addEventListener中的useCapture参数

我在https://developer.mozilla.org/en/DOM/element.addEventListener上阅读了文章,但无法理解useCapture属性.定义有:

如果为true,则useCapture指示用户希望启动捕获.启动捕获后,指定类型的所有事件将被分派到已注册的侦听器,然后再分派到DOM树中它下面的任何EventTargets.向上冒泡树的事件不会触发指定使用捕获的侦听器.

在这段代码中,父事件在子事件之前触发,因此我无法理解其行为.文档对象具有usecapture为true且子div具有usecapture设置为false并且文档usecapture被跟随.因此,为什么文档属性优先于子元素.

function load() {
  document.addEventListener("click", function() {
    alert("parent event");
  }, true);

  document.getElementById("div1").addEventListener("click", function() {
    alert("child event");
  }, false);
}
Run Code Online (Sandbox Code Playgroud)
<body onload="load()">
  <div id="div1">click me</div>
</body>
Run Code Online (Sandbox Code Playgroud)

javascript dom dom-events

279
推荐指数
8
解决办法
8万
查看次数

悬停子元素时触发HTML5 dragleave

我遇到的问题dragleave是当悬停该元素的子元素时会触发元素事件.此外,dragenter再次悬停父元素时不会触发.

我做了一个简化的小提琴:http://jsfiddle.net/pimvdb/HU6Mk/1/.

HTML:

<div id="drag" draggable="true">drag me</div>

<hr>

<div id="drop">
    drop here
    <p>child</p>
    parent
</div>
Run Code Online (Sandbox Code Playgroud)

使用以下JavaScript:

$('#drop').bind({
                 dragenter: function() {
                     $(this).addClass('red');
                 },

                 dragleave: function() {
                     $(this).removeClass('red');
                 }
                });

$('#drag').bind({
                 dragstart: function(e) {
                     e.allowedEffect = "copy";
                     e.setData("text/plain", "test");
                 }
                });
Run Code Online (Sandbox Code Playgroud)

它应该做的是通过在div那里拖动东西时使滴红色来通知用户.这样做有效,但是如果你拖入p孩子,那dragleave就会被激发而且div不再是红色.回到跌落div也不会再次变红.有必要完全移出掉落div并再次拖回它以使其变红.

dragleave拖入子元素时是否可以防止触发?

2017更新: TL; DR,查看CSS pointer-events: none;,如下面@ HD的答案中所述,适用于现代浏览器和IE11.

html javascript jquery drag-and-drop jquery-events

272
推荐指数
20
解决办法
7万
查看次数

为什么textarea充满了神秘的白色空间?

我有一个简单的文本区域,形式如下:

<textarea style="width:350px; height:80px;" cols="42" rows="5" name="sitelink">
    <?php if($siteLink_val) echo $siteLink_val; ?> 
</textarea>
Run Code Online (Sandbox Code Playgroud)

我在这个textarea中不断获得额外的空白区域.当我插入它时,我的光标就像在textarea的中间而不是在开头?解释是什么?

html php forms textarea

265
推荐指数
11
解决办法
14万
查看次数

jQuery单击事件多次触发

我试图用Javascript编写一个视频扑克游戏作为一种获取它的基础知识的方法,并且我遇到了jQuery点击事件处理程序多次触发的问题.

它们附在用于下注的按钮上,并且它适用于在比赛期间在第一手牌上下注(仅发射一次); 但是在投注秒针时,每次按下下注或下注按钮时,它都会触发点击事件两次(因此每次按下两次正确的金额).总的来说,它遵循这种模式,按下一次下注按钮时点击事件被触发的次数 - 其中序列的第i个术语是从游戏开始时第i个手的投注:1,2,4 ,7,11,16,22,29,37,46,对于任何值得的东西来说似乎是n(n + 1)/ 2 + 1 - 而且我还不够聪明,我用过OEIS.:)

这是使用单击事件处理程序的函数; 希望它很容易理解(如果没有,请告诉我,我也希望在这方面做得更好):

/** The following function keeps track of bet buttons that are pressed, until place button is pressed to place bet. **/
function pushingBetButtons() {
    $("#money").text("Money left: $" + player.money); // displays money player has left

    $(".bet").click(function() {
        var amount = 0; // holds the amount of money the player bet on this click
        if($(this).attr("id") == "bet1") { // the …
Run Code Online (Sandbox Code Playgroud)

javascript jquery click jquery-events

265
推荐指数
8
解决办法
31万
查看次数

如何在没有事件的情况下获得鼠标位置(不移动鼠标)?

是否可以在页面加载后使用JavaScript获取鼠标位置而无需任何鼠标移动事件(不移动鼠标)?

javascript mouseevent dom-events

263
推荐指数
8
解决办法
19万
查看次数

何时调用活动上下文或应用程序上下文?

有很多关于这两种背景的帖子......但我仍然没有把它弄得恰到好处

据我所知到目前为止:每个都是它的类的一个实例,这意味着一些程序员建议你this.getApplicationContext()尽可能经常使用,以免"泄漏"任何内存.这是因为另一个this(获取Activity实例上下文)指向Activity每次用户倾斜手机或离开应用程序等时被销毁的内容.显然垃圾收集器(GC)没有捕获,因此使用太多内存..

但是,任何人都可以提出一些非常好的编码示例,它们是正确的使用this(获取当前Activity实例的上下文)并且应用程序上下文将是无用的/错误的吗?

android this android-context

259
推荐指数
5
解决办法
7万
查看次数