将css样式应用于jquery插件

时间:2011-12-06 03:11:15

标签: javascript jquery css

我正在尝试为我当前的项目创建一个jquery treeview插件。插件可以在这个时候与Firefox一起运行良好;但是,在使用IE运行时,无法应用所有css样式。例如,我在css文件#button {...}中定义,然后当我生成id =“button”的控件时,它无法从css中检索样式。我该如何解决这个问题?

这是我的一些代码

在js文件中

    createControls = function() {

    nDiv = document.createElement("div");       
    nTxt = document.createElement("input");
    nTxt.setAttribute('id','txtAdVal');
    nTxt.setAttribute('type','text');
    nTxt.setAttribute('style' , "width:300px");

    nBut = document.createElement("button");
    nBut.innerHTML = "Show Active Directory Tree";
    nBut.setAttribute("class", "button");

    nDiv.appendChild(nTxt);
    nDiv.appendChild(nBut);

    $(nBut).bind('click', function(event) {
        createTree();
    });

    return nDiv;
};

并在css文件中

.button{...}

1 个答案:

答案 0 :(得分:0)

如何改变:

nBut.setAttribute("class", "button");

要:

nBut.className = "button";

由于您已经包含了jQuery,因此您还可以确保跨平台执行所有操作:

nBut = $("<button class='button'>Show Active Directory Tree</button>");
nDiv.append(nBut);

请注意,这需要nDiv成为jQuery对象(nDiv = $('div'))。

我在stackoverflow上找到了这个答案:How can I reliably set the class attr w/JavaScript on IE, FF, Chrome, etc.?