jQuery插件 - 内联CSS还是外部样式表?

时间:2012-01-11 07:50:23

标签: javascript jquery css

我正在编写一个jquery插件,我在想是否应该移动.js文件中的所有CSS,只是为了让它更容易设置。

我应该这样做吗?这太糟糕了,表现明智吗?

6 个答案:

答案 0 :(得分:3)

最常见的是使用:

jquery.myplugin.js
jquery.myplugin.css

并将这些内容一起发送给使用该插件的任何人。这是一项额外的请求,但它正在实施问题分离:stylinglogic

答案 1 :(得分:2)

不要这样做并使用CSS文件进行布局和感觉。松耦合是一项重要的资产。这将确保任何具有CSS知识的开发人员可以轻松地在未来更改外观和布局,而无需使用javascript代码。

布局和外观完全是一个不同的问题。将它与.js文件合并将始终需要一个javascript编码器,仅仅是为了改变元素的背景或尺寸。

性能方面,眼睛没有任何差异。但是,明智的发展,你会有噩梦。

这是一个纯粹的禁止恕我直言

答案 2 :(得分:1)

没有性能下降或类似的东西,只是对于使用插件的人来说它是否更具可读性和可维护性。

答案 3 :(得分:1)

为什么要将CSS移动到JS文件?在HTML中链接CSS文件相当容易。

我通常更喜欢让CSS和JS相互分离,以便在需要时更容易维护和修改。如果样式位于JS文件本身中,修改CSS可能会很麻烦。

单独加载CSS也允许样式在HTML中呈现,即使加载JS时出现问题。

为了减小尺寸,如果性能受到关注,您还可以缩小JS和CSS文件 - http://code.google.com/p/minify/

有关YUI压缩器的更多信息 - http://developer.yahoo.com/yui/compressor/

答案 4 :(得分:1)

只是让css可编辑,className和id对你有好处,css选择器,你知道,样本

式:

.graceful {width:100px;height:100px;background:#36c;}

脚本:

var div = document.createElement('div');
    div.className = 'graceful';
    div.innerHTML = ' ';
    document.getElementById('_images').appendChild(div)

答案 5 :(得分:0)

我正在开发一个消耗一些资源文件的插件:声音,CSS和小图像。 我已经内联了声音和图像(实际上非​​常小) 目的是让插件用户的生活更轻松,节省他们不复制资源文件和出现问题和浪费时间的机会(我是一个可用性人)。

同样,我正在研究内联css文件,使插件自包含,包含所有内容的单个文件。

@ c4urself的答案,通常一个插件由两个同名的文件,.js和.css组成,让我改变主意:现在我认为我的用户可能会浪费时间搜索.css文件而不是跳过ik 所以我决定采用通常的2文件标准,有一段时间会反映在我的binabacus插件结构中。哪个,顺便说一句,我认为没有人会真正使用它,这是一个利用jquery-boilerplate的做法,我正在编写的教程即将发布。