在Javascript中实现多态性——会是什么样子?
Implementing Polymorphism in Javascript - how would this look?
我试图使跳转到一个更面向对象风格的javascript方法,但我只是没有得到正确的javascript。
以如下函数为例:
function positionalCSS(array, cs, lcs){
/* Define css for circle based on number of circles */
//Count array
var arrCount = array.length;
var T = [];
var L = [];
if(arrCount == 3){
T[0] ='15px';
L[0] = '240px';
T[1] = '345px';
L[1] = '440px';
T[2] = '345px';
L[2] = '40px';
}
if(arrCount == 4){
T[0] ='-135px';
L[0] = '90px';
T[1] = '-10px';
L[1] = '290px';
T[2] = '220px';
L[2] = '270px';
T[3] = '315px';
L[3] = '90px';
}
if(arrCount == 6){
T[0] ='-135px';
L[0] = '90px';
T[1] = '-10px';
L[1] = '290px';
T[2] = '220px';
L[2] = '270px';
T[3] = '315px';
L[3] = '90px';
T[4] = '210px';
L[4] = '-100px';
T[5] = '-10px';
L[5] = '-110px';
}
$.each(array, function(i) {
var num = parseInt(i);
// console.log('$("' + lcs + ' ' + cs + '.handle-' + num + '").first().children("div");');
$(lcs + ' ' + cs + '.handle-' + num).first().children('div').css({
'position': 'absolute',
'top': T[num],
'left': L[num]
});
});
}
这很可怕,我想传递一个数组,并根据有多少,根据这个组织项目的位置。所以我猜基于它的大小,我会给它一些属性?每个TL代表对象的顶部和左侧位置?
我会创建一个对象,您可以在其中查找保存T/L
值的预制对象数组。
var counts = {
3: [
{t:'15px', l:'240px'},
{t:'345px', l:'440px'},
{t:'345px', l:'40px'}
],
4: {
// as above
},
5: {
// as above
}
};
然后在你的函数中使用:
function positionalCSS(array, cs, lcs){
$.each(counts[array.length], function(i, obj) {
// console.log('$("' + lcs + ' ' + cs + '.handle-' + i + '").first().children("div");');
$(lcs + ' ' + cs + '.handle-' + i).first().children('div').css({
'position': 'absolute',
'top': obj.t,
'left': obj.l
});
});
}
相关文章:
- 如何使用动画实现纸张推车
- 客户端服务器REST API captcha实现
- 如何实现此布局
- Meteor忘记了密码的实现
- 使用Native Sockets在Android中实现WebSockets
- 在样板文件中实现Ajax
- instanceof是如何在JavaScript中实现的
- 如何正确实现Jquery多选小部件
- 实现一个建立在google.com之上的自定义搜索引擎
- 多个组件是如何实现的
- window.location使用jquery mobile实现chrome跳转
- 如何在OpenERP中实现网络摄像头
- Node.js使用Series函数(模式?)实现流控制时出现意外结果
- javascript加密实现,包括可信否认
- 实现比较方法的最佳实践是什么;s的比较类型是在运行时选择的
- 如何让程序员在javascript中实现正确的回调
- 如何使用自定义辅助对象(handler)实现嵌套的每个循环
- AngularJS智能表全局配置实现
- Expressjs/AngularJS:实现req-flash后出错
- 如何在JavaScript中实现二进制搜索