我正在制作一个在页面上显示警报的 jQuery 插件。插件本身将警报标记插入到 DOM 中。由于 jQuery 的方式是让一切都返回this
以维护链接,因此我遇到了一个有趣的问题,我希望得到反馈。我正在尝试在以下两个选项之间做出决定。
选项一:
$("#content").alert('prepend', {type:'error', message:'This is an error'})
这看起来很简单。#content
在DOM 元素的开头添加警报。问题是尚不清楚返回的内容。返回刚刚创建的 alert 元素是有意义的,但这与 jQuery 方式背道而驰。
选项二:
$("<div>").alert({type:'error', message:'This is an error'}).prependTo("#content")
这种方式看起来不太清晰,不太直观,但它更符合jQuery的做事方式,并且很清楚要返回什么元素。
那么你会选择哪些选项呢?我担心的是大多数用户可能不知道你可以做些什么$('<div>')
来创建一个新元素。另一方面,我不知道任何知名项目的 jQuery 插件方法返回的元素不是它们被调用的元素,但也许有。想法?