调用函数和命名空间 - JavaScript

时间:2016-12-13 10:50:26

标签: javascript

有人可以解释下面的功能如何工作以及我如何创建新的按钮对象?我需要调用MYAPP.dom.Button函数吗?我假设'返回b'返回一个按钮对象?

var MYAPP = {};
MYAPP.dom = {};
MYAPP.dom.Button = function(text, conf) {
    var styles = {
        font: 'Verdana',
        border: '1px solid black',
        color: 'black',
        background: 'grey'        
    };
    function setStyles() {
        for (var i in styles) {
            b.style[i] = conf[i] || styles[i];                            
        }
    }
    conf = conf || {};
    var b = document.createElement('input');
    b.type = conf['type'] || 'submit';
    b.value = text;
    setStyles();
    return b;  
};

2 个答案:

答案 0 :(得分:3)

你是对的,b指的是button元素。您需要按如下方式调用MYAPP对象的方法:

MYAPP.dom.Button(x, y);

对于x,您需要传递一些文本作为按钮的value,并y需要定义按钮的type。按钮的type默认为submit

以下MYAPP.dom.Button('hey');将返回

<input type="submit" value="hey" style="border: 1px solid black; color: black; background: grey;">

同样@dreamweiver在下面说过

  

y参数也有资格保留按钮的样式,如果   未通过它将采取内部提到的默认样式属性   按钮功能

答案 1 :(得分:0)

您可以将新按钮设为:

var btnText = 'Go';
var conf['type'] = 'button';
var goBtn = MYAPP.dom.Button(btnText, conf);

它将创建一个带Go值和按钮的按钮;

第二个参数是可选的,因此也可以将其称为:

var goBtn = MYAPP.dom.Button('Submit');

它将创建一个带有文本提交的按钮并输入提交。