小编eir*_*krl的帖子

Javascript在回调函数中打破for循环

我有以下代码:

function test(obj) {

    if(//some conditon) {
        obj.onload();
    }else{
        obj.onerror();
    }
}


for(var i=0;i<4;i++){   

    test({
        onload:function(e){          
            //some code to run
        },
        onerror:function(e){
            break;
        }


    });
}
Run Code Online (Sandbox Code Playgroud)

要点是test()函数是一个发出XHR请求的函数(它实际上是Appcelerator Titanium平台的API,所以我无法控制它)而且我正在循环调用测试函数.我需要打破onerror函数的循环,但是我得到一个错误,说中断不在循环或switch语句中.我怎么能改写这个?

javascript for-loop callback break

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

封装在javascript模块模式中

我正在阅读这个链接http://addyosmani.com/largescalejavascript/#modpattern

并看到以下示例.

var basketModule = (function() {
var basket = []; //private

return { //exposed to public
       addItem: function(values) {
            basket.push(values);
        },
        getItemCount: function() {
            return basket.length;
        },
        getTotal: function(){
            var q = this.getItemCount(),p=0;
            while(q--){
                p+= basket[q].price;
            }
        return p;
        }
      }
}());

basketModule.addItem({item:'bread',price:0.5});
basketModule.addItem({item:'butter',price:0.3});

console.log(basketModule.getItemCount());
console.log(basketModule.getTotal());
Run Code Online (Sandbox Code Playgroud)

它的统计数据"模块模式是一种流行的设计模式,它使用闭包来封装'隐私',状态和组织"这与下面的编写有何不同?不能通过功能范围简单地执行隐私吗?

var basketModule = function() {
var basket = []; //private
       this.addItem = function(values) {
            basket.push(values);
        }
        this.getItemCount = function() {
            return basket.length;
        }
        this.getTotal = function(){
            var q = this.getItemCount(),p=0;
            while(q--){ …
Run Code Online (Sandbox Code Playgroud)

javascript encapsulation design-patterns module

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

在 HTML5 画布中实现画笔厚度变化(示例想要在内部模拟)

我希望在下面的演示中指出正确的算法方向:http://sta.sh/muro/。还有它正在使用的画布工具 - 即它是绘制线条还是绘制许多弧线等

具体来说,我想模拟画笔转动,这会导致整个“画笔笔触”更粗。请参阅图像以了解我要模拟的画笔设置。

最终,我希望创建一个在转动时厚度会变化的画笔,就像下面的行为一样。

在此输入图像描述

html javascript drawing canvas paint

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

CSS第一个孩子的bug?或预期的行为?

我有以下设置

.test div:first-child {};

<div class="test" id="one"> 

    <div id="two"> 

        <div id="three"> 
        </div>

    </div>

</div>
Run Code Online (Sandbox Code Playgroud)

不知何故,div#3继承了第一个孩子的风格,即使它不是div.test的第一个孩子.这是故意的浏览器吗?有人可以解释一下吗?

css css-selectors

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