小编dan*_*ndi的帖子

IE 11平滑滚动不会触发中间滚动事件

如果我们做一个简单的测试用例,例如:

document.documentElement.addEventListener('scroll', function() {
    console.log(document.documentElement.scrollTop);
});
Run Code Online (Sandbox Code Playgroud)

然后通过单击轨道或使用PageDown/PageUp使用滚动条滚动,然后我们可以看到在滚动动画结束时我们只获得一个事件.

现在理论上我可以通过模拟滚动事件来修复一些行为.使用jQuery和Underscore的示例代码:

$(function () {
    var $document = $(document), until = 0;

    var throttleScroll = _.throttle(function () {
        $document.scroll();
        if (+new Date < until) {
            setTimeout(throttleScroll, 50);
        }
    }, 50);

    $document.keydown(function (evt) {
        if (evt.which === 33 || evt.which === 34) {
            until = +new Date + 300;
            throttleScroll();
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

但它仍然无效.我们只获得原始scrollTop目的地和目的地的滚动事件scrollTop,两者之间没有值.

如果然后console.log(document.documentElement.scrollTop)每10分钟一次,那么我们可以看到IE在scrollTop滚动时不会更新.

如果我们想要将某些内容"固定"到滚动位置,这将非常令人沮丧.IE变得生涩.

我没有在任何其他浏览器上观察到此行为,并且没有使用以前的IE版本进行测试.

如果有人找到一种方法来修复IE的行为(也许有一个神奇的CSS来关闭IE 11中的平滑滚动?)那么我非常想听听它!

谢谢 :-)

javascript jquery internet-explorer underscore.js

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

Javascript和C#交叉编译和转换

将Javascript交叉编译或转换为C#并返回的各种工具有哪些?如何在JS中用C#或C#执行JS?这是一个很受欢迎的问题,我将为此提供答案.

javascript c# compiler-construction

16
推荐指数
1
解决办法
1万
查看次数

Chrome性能:"标准"属性名称与非标准名称

所以这是一个有趣的...当我在一个元素上测试setAttribute与普通属性设置的性能时,我发现了一个奇怪的行为,然后我在常规对象上进行了测试......它仍然很奇怪!

因此,如果您有一个对象A = {},并且您将其属性设置为A['abc_def'] = 1,或者A.abc_def = 1它们基本相同.但是如果你做A['abc-def']= 1或A['123-def']= 1那么你就麻烦了.它变得越来越慢.我在这里设置了一个测试:http://jsfiddle.net/naPYL/1/.它们在除chrome之外的所有浏览器上都是相同的.有趣的是,对于"abc_def"属性,chrome实际上比Firefox和IE快得多,正如我所料.但对于"abc-def"来说,它的速度至少要慢两倍.

所以这里基本上(至少从我的测试中)发生的是,当使用属性的"正确"语法时(法律C语法,你可以使用点属性) - 它很快,但是当你使用需要使用括号的语法时(a [...]那你就麻烦了.

我试图想象在两种模式之间以这种方式区分哪种实现细节,而不是.因为我想到它,如果你支持那些非标准名称,你可能正在将所有名称翻译成相同的机制,其余的只是编译成该机制的语法.所以.编译后,语法和[]应该都是一样的.但显然有一些事情在这里反过来......

如果不看V8的源代码,有人会想到一个非常令人满意的答案吗?(把它想象成一个练习:-))

这里也是一个快速的jsperf.com示例

感谢JDMperf的NDM示例!

编辑:

为了澄清,我当然也希望从实际代码(我已经找到)中得到具体答案,或者更确切地说 - 具体实现背后的原因.这就是我要求你把它看作"练习"的原因之一,看看技术实现的背后并试图找到原因.

但我也希望看到其他人的思想如何在这些案例中发挥作用.对于你们中的一些人来说,这听起来可能"模糊" - 但是不时地尝试和其他人一样思考,或者采取他们的观点是非常有用的.它增强了你自己的思维方式.

javascript performance google-chrome

12
推荐指数
1
解决办法
163
查看次数

有没有办法将Android应用程序绑定到长按主页按钮?

我正在寻找一个像android.intent.category.HOME这样的intent-filter,它允许应用程序在按下HOME按钮时启动,只需长按.或者任何其他方法来实现相同的结果......我读到过去有可能但出于安全原因而被禁用......是真的吗?

谢谢!

android android-intent

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

在gradle中导入jar,编译,但Android Studio无法识别(0.2.10)

这是一件烦人的事情。我有一个基于 Gradle 的简单项目结构,与我拥有的其他项目非常相似。该项目有以下进口:

dependencies {
    compile 'com.android.support:support-v4:13.0.+'
    compile files('libs/jackson-annotations-2.1.0.jar')
    compile files('libs/jackson-core-2.1.0.jar')
    compile files('libs/jackson-databind-2.1.0.jar')
    compile files('libs/zip4j_1.3.1.jar')
    compile files('libs/httpclient-4.1.3.jar')
    compile files('libs/httpclient-cache-4.1.3.jar')
    compile files('libs/httpcore-4.1.4.jar')
    compile files('libs/httpmime-4.1.3.jar')
    compile project(":grid_lib")
}
Run Code Online (Sandbox Code Playgroud)

效果很好。

唯一的问题是 Android Studio 无法识别这些类,因此它们都是红色的并且没有英特尔。 很烦人!

我已经用头撞墙太久了,所以我现在在这里尝试。你们说什么?有任何想法吗?

谢谢 :-)

编辑

我已经回答了我自己的问题,对于那些发现同样问题的人。

android-studio

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

VOID NTAPI是什么意思,我在哪里可以找到它的参考?

我找到了这个代码,我不明白.我找不到参考资料NTAPI.对我来说,它定义了一个被调用的函数,TestForWrNTAPI令人困惑.

VOID NTAPI TestForWr(PVOID Ad, ULONG Le, ULONG Al);
Run Code Online (Sandbox Code Playgroud)

c c++ windows

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