Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 编写复杂jQuery插件时表示HTML部分的最佳方法_Javascript_Jquery - Fatal编程技术网

Javascript 编写复杂jQuery插件时表示HTML部分的最佳方法

Javascript 编写复杂jQuery插件时表示HTML部分的最佳方法,javascript,jquery,Javascript,Jquery,我有一个复杂的jQuery插件要写,它确实有很多html要显示在屏幕上,我应该创建它们。那么,做这项工作的最佳方式是什么呢。我已经可以确定地对它们进行硬编码,但是还有其他优雅的方法吗?有没有办法使用某种模板?。当然,我也不想有更多的依赖关系。你可以将它们放在一个外部文件中,并在需要时加载它们,但这意味着插件用户必须下载你的所有文件,而不是一个js文件。我以前使用过的另一个选项(虽然不是针对插件)是在插件中包含一个对象,该对象包含您想要的所有html。这使得编写插件更容易,因为html不会使插件代

我有一个复杂的jQuery插件要写,它确实有很多html要显示在屏幕上,我应该创建它们。那么,做这项工作的最佳方式是什么呢。我已经可以确定地对它们进行硬编码,但是还有其他优雅的方法吗?有没有办法使用某种模板?。当然,我也不想有更多的依赖关系。

你可以将它们放在一个外部文件中,并在需要时加载它们,但这意味着插件用户必须下载你的所有文件,而不是一个js文件。我以前使用过的另一个选项(虽然不是针对插件)是在插件中包含一个对象,该对象包含您想要的所有html。这使得编写插件更容易,因为html不会使插件代码混乱。此外,当您需要编辑html时,它位于单个位置。您还可以将模板代码放入此对象中

var pi = function() {
    var self = this;

    self.getNewDiv = function(){
        return repo.getDiv();
    }

    //..... all your plug in code goes here and at the bottom

    var htmlRepository = function() {
        var divCode = "<div></div>";

        this.getDiv = function(){
           return divCode;
        };

        this.getSpan = function(){
            return "Span Content";
        }

        this.getDivWithSpan = function(){
            return getSpan().wrap(divCode); //etc
        }
    };

    var repo = new htmlRepository();
}
var pi=function(){
var self=这个;
self.getNewDiv=函数(){
返回repo.getDiv();
}
//…所有的插件代码都在这里和底部
var htmlRepository=函数(){
var divCode=“”;
this.getDiv=函数(){
返回divCode;
};
this.getSpan=函数(){
返回“范围内容”;
}
this.getDivWithSpan=函数(){
返回getSpan().wrap(divCode);//等
}
};
var repo=new htmlRepository();
}

您的插件有链接吗?你需要做什么样的工作。举个例子,把所有东西都放在一个地方是个好主意。。谢谢:)@jossie我不知道你的插件的性质,但是想想看,有些插件也需要你下载他们的css文件。如果您使用外部html文件从中获取html,用户可以下载该文件并添加他们自己的css类,修改html内容以满足他们的需要,等等。