我正在创建一个jQuery插件,我对如何构建事物有一些疑问:
1.插件编写的HTML应该多少,应该通过jQuery创建多少?
编写所有HTML是否合适,以便在查看代码时可以看到整个标记结构?
或者最好只编写最少量的HTML,以便用户可以很容易地添加/修改内容并通过jQuery创建所有其余的,庞大的HTML?
有推荐的做法吗?如何在专业插件中完成任务?
为什么要以某种方式完成任务以及背后的原因是什么?
2.如何平衡插件选项与CSS?
插件是否应该提供影响插件表示的选项(可以修改样式表的选项),或者让用户直接修改样式表以进行演示修改是一种更好的做法,并且在插件中只有与之相关的选项功能?
有哪些指南可以说明插件中提供哪些选项而不是跳过CSS?
关于我的经历,我在不同的地方和插件中看到了所有这些,这就是为什么我要求有经验的用户提出意见,以及有什么好的做法和原因。
答案 0 :(得分:2)
<强> 1。这个插件应该写多少HTML以及它应该通过jQuery创建多少?
根据渐进增强的范例,在没有启用JS的情况下,应该没有标记,这将是无用的。换句话说 - 如果你的插件需要一些特殊的标记和其他标签,它应该自己创建它们。
原因是语义。当没有启用JS时,额外的插件标记对于用户(和机器人)是无用的,因此根本不应该存在。
另外请记住,开发一个好的JS插件意味着当插件失败或JS被禁用时,内容仍然可用。此外,您必须更加注意确保您的插件可访问。有关更多高级问题的渐进增强主题的更多内容可以在The Filament Group的书中找到。
<强> 2。如何平衡插件选项与CSS?
按如下方式进行:
尽管它现在有点变化(想想CSS3动画),插件的选项可能会影响的工作方式而不是看起来的方式。这意味着您的用户应该能够通过JS配置时间,延迟,速度,元素数量或插件正在执行的任何操作。但是将表示方面留在CSS样式表中。使用JS来更改元素类而不是内联样式,并让用户编写他们想要的任何CSS。显然,不要忘记提供一些默认样式:)
我总是建议您在A List Apart中详细了解相关主题。这是一篇非常理论化的文章,但绝对是任何前端开发者必读的内容。
答案 1 :(得分:0)
Tutsplus有一个带有用视频的jQuery课程。 http://tutsplus.com/lesson/head-first-into-plugin-development/
这是解释te如何制作插件的视频之一。 有很多方法可以创建一个插件,但这是一个很好的插件。