【问题标题】:Javascript personalized functionJavascript个性化功能
【发布时间】:2013-05-13 03:04:56
【问题描述】:

我需要知道如何制作类似 jQuery function 的东西,而不是使用 CSS 选择器,就像这样:

function getId( item )  {
    return document.getElementById( item );
}

getId('elementID').firstFunction('property').secondFunction('property');

但我不知道如何将getId 结果发送到firstFunction 以对getId() 元素进行一些处理,然后使secondFunction 工作,我一直在尝试使用prototype 但是我不能让它工作。

【问题讨论】:

  • 你可以看看jQuery是如何处理它的。

标签: javascript user-defined-functions


【解决方案1】:

您只需要确保您希望能够链接的所有方法都接受与它们输出相同的上下文,在您的情况下为 DOM 元素。

所以,firstFunctionsecondFunction 都应该期望 this 是一个 DOM 元素,并且也应该返回 DOM 元素。然而,这意味着您需要修改内置的 DOM 元素对象并添加您自己的方法,即generally a bad idea。这就是为什么 jQuery 将所有内容包装在一个包装对象中,该对象包含作为 API 可用的方法。这些方法都作用于this(必须是相同的特殊对象类型)并返回一个(通常是修改过的)相同类型的对象。

在此处查看更轻量级的示例:http://buildingwebapps.blogspot.com/2012/01/creating-lightweight-dom-javascript.html 并在此处查看其他内容:http://kendsnyder.com/posts/element-wrappers-in-javascript

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-21
    • 2018-08-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多