假设我有一些JavaScript会修改DOM,可能隐藏/显示表单字段或类似的东西,让我们假设我想在多个页面上执行此任务,但每页只执行一次或两次。< / p>
将此功能封装到jQuery插件或vanilla JavaScript函数中会更好吗?
基本上就是这样:
jQuery.fn.toggleFormInput = function() {
// Stunning JavaScript/jQuery magic here
}
比这更好还是更坏:
function toggleFormInput () {
// Stunning JavaScript/jQuery magic here
}
答案 0 :(得分:2)
这实际上取决于您网站的其他部分。如果您正在使用jQuery库的其余部分,那么您可以使用自己内部的jQuery特定函数 - each()就是一个很好的例子。这种jQuery魔术可能允许你编写更少的代码。我会考虑做一些基准测试,你可以写两个并看看哪一个执行得更快。
但是如果你想要一个可以在没有依赖的情况下从一个站点移动到另一个站点的功能,那么单独使用Javascript可能是一个好主意。就个人而言,我倾向于使用普通的Javascript,这样我就不会被限制在任何一个库中,但这是你的选择。
答案 1 :(得分:1)
好吧,当我这样做的东西我使用普通的javascript函数时,我认为它更容易查找函数,我没有看到纯javascript的缺点,我看到jQuery.fn的一个缺点,就是当有人查看您的代码并看到$("selector").someFunctionName
,他可能会尝试搜索该函数的jquery文档。