目前我的程序位于一个地方,它既可以监听用户滚动某个元素,也可以自动滚动这个元素.(不是一个渐进的,漂亮的卷轴,而是瞬间跳跃.我发誓在上下文中有道理.)
如果通过设置scrollLeft或scrollTop完成滚动,有没有办法使滚动事件不触发?我的第一个想法是一个基本的开关,如:
ignoreScrollEvents = true;
element.scrollLeft = x;
ignoreScrollEvents = false;
function onScroll() {
if(ignoreScrollEvents) return false;
}
Run Code Online (Sandbox Code Playgroud)
但由于事件不会立即触发(oops,duhh),这不是一个可行的解决方案.我可以尝试其他什么样的答案?我也在使用jQuery,如果这有帮助的话.
Redux中间件中dispatch和next之间有什么区别?
export default function sampleMiddleware(store) {
return next => action => {
store.dispatch(action)
next(action)
}
}Run Code Online (Sandbox Code Playgroud)
我有一个像这样的json变量
var jsondata={"all":"true"}
Run Code Online (Sandbox Code Playgroud)
我想将另一个键和值推送到jsondata.之后我的jsondata必须像这样.
{"all":"true","FDamount":"false","DDamount":"true"}
Run Code Online (Sandbox Code Playgroud)
怎么做???我试过jsondata.push({"FDamount":"false"})和jsondata.push("FDamount:false").这两种方法都不起作用.
谢谢
我有以下jquery事件处理函数:
$('.target').on('dblclick', function() {
//respond to double click event
});
Run Code Online (Sandbox Code Playgroud)
我的问题是这个事件处理程序不适用于触控设备(iPhone,iPad ......).任何人都可以推荐一种可靠的替代品dblclick,可以在触摸设备上使用,并且仍可以在全尺寸设备上轻松双击使用吗?
元素的srcset属性img可帮助作者调整其网站以进行高分辨率显示,以便能够使用代表同一图像的不同资源.
图片元素帮助作者基于媒体查询和/或对特定图像格式的支持来控制用户代理向用户呈现哪个图像资源.
这两者都使作者能够控制基于设备分辨率显示图像;从而使图像响应.那么它们之间的主要区别是什么?
我确实在picture元素草案中找到了一些例子,但仍然无法理解其中的差异.以下是示例:
使用srcset属性:
<img src="pic1x.jpg" srcset="pic2x.jpg 2x, pic4x.jpg 4x"
alt="A rad wolf" width="500" height="500">
Run Code Online (Sandbox Code Playgroud)
使用picture元素:
<picture>
<source media="(min-width: 45em)" srcset="large.jpg">
<source media="(min-width: 18em)" srcset="med.jpg">
<img src="small.jpg" alt="The president giving an award.">
</picture>
Run Code Online (Sandbox Code Playgroud) 我在每个Yahoo!上看过这个 新闻页面,在源代码的底部,
并且无法理解为什么他们会像这样打破脚本字.
有人知道这有什么理由吗?
document.write("<scr"+"ipt language=javascript src=http://l.yimg.com/d/lib/bc/bc_2.0.4.js></scr"+"ipt>");
Run Code Online (Sandbox Code Playgroud) 我试图想出一种方法来测量滚动事件的速度,这将产生某种数字,它将代表速度(从滚动点A到B点的距离相对于它所花费的时间).
我正在用Javascript编写一个有趣的数独游戏.
一切都很好,每次都用一个解决方案完全生成电路板.
我唯一的问题是,这就是让我从公开发布我的项目的原因
是我不知道如何评估我的电路板的难度等级.我在任何地方都看过,
发布在论坛上等等.我不想自己编写算法,这不是这个项目的重点,
除此之外,它们对我来说太复杂了,因为我不是数学家.
我唯一接近的是这个网站,它通过JS进行评分,
但问题是,代码是用一种糟糕的无证,非常特别的方式编写的,
因此无法借用......
我会谈到这一点 -
任何人都可以请我指向一个提供Sudoku评级/评级源代码的地方吗?
谢谢
更新22.6.11:
这是我的数独游戏,我已经实现了自己的评分系统,它依赖
于基本的人工逻辑解决技术,所以请查看它.
是否有更短,更好的方法来生成'n'长度的2D阵列?
var a = (function(){ var i=9, arr=[]; while(i--) arr.push([]); return arr })();
a // [ [],[],[],[],[],[],[],[],[] ]
Run Code Online (Sandbox Code Playgroud)
**老派短途**:
var a = (function(a){ while(a.push([]) < 9); return a})([]);
Run Code Online (Sandbox Code Playgroud)
更新 - 使用ES2015
Array(5).fill().map(a=>[]); // will create 5 Arrays in an Array
// or
Array.from({length:5}, a=>[])
Run Code Online (Sandbox Code Playgroud)
清空2D数组(相当于节省内存)
function make2dArray(len){
var a = [];
while(a.push([]) < len);
return a;
}
function empty2dArray(arr){
for( var i = arr.length; i--; )
arr[i].length = 0;
}
// lets make a 2D array of 3 items …Run Code Online (Sandbox Code Playgroud) 这是一个例子:
注意所有的红色div是如何相同height而且有padding-top:100%;,但它们A和B有不同的填充大小......并且看起来父级的宽度改变了这个值(注意C改变height了父级,但是没有不要改变填充物.
为什么padding以这种方式与宽度相关?
编辑:由于历史原因,如果jsfiddle消失,我在我的例子中使用的代码如下...
.outer {
background-color: green;
height: 300px;
width: 70px;
float: left;
margin-right: 10px;
}
.middle {
background-color: red;
height: 100px;
width: 50px;
padding-top: 100%;
}
.inner {
background-color: blue;
height: 3px;
width: 100%;
}Run Code Online (Sandbox Code Playgroud)
<div class='outer'>
<div class='middle'>
A
<div class='inner'>
</div>
</div>
</div>
<div class='outer' style='width:100px'>
<div class='middle'>
B
<div class='inner'>
</div>
</div>
</div>
<div class='outer' style='height:400px'>
<div class='middle'>
C
<div class='inner'>
</div>
</div>
</div>Run Code Online (Sandbox Code Playgroud)