我只能获得每个想要我的小部件的网站,一次复制并粘贴代码块。
所以它需要真正的未来证明。
我已经考虑了一段时间了,这是我提出的小部件代码:
<script type="text/javascript" src="http://www.mydomain.com/my-future-proof-widget.js"></script>
<div id="mywidget"></div>
这是最好的计划吗?
这会造成任何限制吗?
关于widgetry的任何其他想法?!
答案 0 :(得分:2)
我不会将<div id="mywidget"></div>
添加到代码中,因为将来的实验可能会建议备用容器/布局等。相反,我会在我的脚本中提供一个接受id或节点的设置函数。
因此,安装脚本可能看起来更像这样:
<script type="text/javascript" src="http://www.mydomain.com/my-future-proof-widget.js"></script>
<script type="text/javascript">
mywidget.init("my_id_or_node");
</script>
使用init()
功能还可以让人们将您的小部件添加到动态生成的代码中,或者创建它以更轻松地响应用户的活动。如果它在加载的那一刻运行,那么它会极大地限制人们的选择。
答案 1 :(得分:1)
这样的事情怎么样:
<script type="text/javascript">
var MyWidgetSettings = {
idList: ["myWidget1", "myWidget2"],
color: "#f00",
behavior: "erratic",
someOtherSetting: "whatev"
};
</script>
<div id="myWidget1"></div>
<div id="myWidget2"></div>
<script type="text/javascript"
src="http://www.mydomain.com/my-future-proof-widget.js"></script>
虽然我猜你不需要添加一个设置对象来做默认行为(即查找id为“myWidget”的div并插入单个小部件),对于更复杂的东西,它可以很方便。我还建议将脚本标记放在div之后,所以当文件加载时,它可以立即替换元素,而不是必须稍后再回来做。
您目前的做法目前可能还不错,并且随着需求的增加,您可以在将来使其变得更加复杂,并使其适用于简单的案例。
答案 2 :(得分:0)
由于您的小部件引用了服务器上的文件,因此您始终可以更新它。你能获得多少未来证据?
这对我来说很好。