我应该如何编写 jQuery 插件以像 String.myPlugin() 而不是 Selector.myPlugin() 一样使用它?

发布于 2024-12-10 15:59:24 字数 231 浏览 0 评论 0原文

我最近一直在玩 jQuery,现在需要一个字符串函数,我想像这样执行它:

var str = "mystring";
if( str.myPlugin( ) )
{

}

但是我找到的所有 jquery 插件示例都只能像 $(selector).myPlugin( );如果我将它们应用于字符串,我会得到“...不是函数”。

我该怎么做?

I've been playing with jQuery lately and I need now a function for strings, and I want to execute it like this:

var str = "mystring";
if( str.myPlugin( ) )
{

}

But all the examples I found for jquery plugins can only be used like $(selector).myPlugin();If I apply them to a string i get "... is not a function".

How can I do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

小情绪 2024-12-17 15:59:24

当您创建字符串时,您真正创建的是 String 对象的新实例。

var str = new String("mystring");

您可以使用对象的原型向该对象的所有实例添加方法。

String.prototype.myPlugin = function(){
  alert("worky!");
}

var str = "mystring";
str.myPlugin();

由于可能的名称冲突,向本机对象(例如 String 对象)添加新方法通常会受到反对。

编辑:只是为了添加说明。

这不是 jQuery 的方法,并且不需要 jQuery 来创建此类方法。

When you create a string, what you are really creating is a new instance of the String object.

var str = new String("mystring");

You can add methods to all instances of the object using the object's prototype.

String.prototype.myPlugin = function(){
  alert("worky!");
}

var str = "mystring";
str.myPlugin();

Adding new methods to native objects such as the String object is usually frowned upon due to possible name conflicts.

Edit: just to add clarification.

This is not a method of jQuery and jQuery is not required to create these kinds of methods.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文