何时编写jQuery插件

When to write a jQuery plugin?

本文关键字:插件 jQuery 何时编      更新时间:2023-09-26

这不是一个打字错误:我问何时而不是如何编写jQuery插件。: -)

目前,我为我的项目的几乎每个模块编写了一个jQuery插件。它工作得很好,但听起来不对,因为实际上它与jQuery无关,并且只使用一次。

在我看来,插件必须独立于项目本身,或者在项目中使用不止一次。所以,我想知道我的架构是否普遍错误,我对即将到来的答案感到兴奋。

我现在的架构,在一个简单的博客示例中显示:

后端>:

  • BlogController.cls.php - 处理用户操作(例如:show, comment, find)
  • BlogModel.cls.php - 处理数据操作(例如:getter, setter, save, delete)

前端:

路径:/博客/索引/

  • index.htm - HTML的索引模板
  • index.js - JavaScript

路径:/博客/post/123/

  • post.htm - post页面的HTML

<

例子目标/strong>:

我想用一个很酷的消息来覆盖每个博客文章的日期和时间,比如"add 2 hours ago"而不是"add on MM/DD/YYYY HH:ii"

所以,我为这个页面写了一个BlogIndex插件。插件本身使用另一个插件将时间戳转换为字符串。下面是我如何使用BlogIndex:

插件
# index.htm
<div id="blog-index">     
    <ul>
        <li>
            <h2>Post Headline</h2>
            <p class="datetime" data-timestamp="1234567890">June, 19th 2013 12:30</p>
        </li>
        <!-- more posts -->
    </ul>
</div>
# index.js
$("#blog-index").BlogIndex({
    liveDateTimePosted: true,       // overwrites "mm/dd/yyyy hh:ii" to "2 hours ago"
    liveDateTimePostedInterval: 500 // refresh every 500 ms
});

对于post.htm,我会编写插件BlogPost等等。我希望我能解释我在做什么,为什么我这样不开心。

你会改变什么?你将如何以面向对象和模块化的方式组织和编写JavaScript ?我对任何解决方案都持开放态度!

提前感谢!

"在我看来,插件必须独立于项目本身,或者在项目中使用不止一次。"就是这样,我想你已经回答了你自己的问题。