我们正在构建一个小型的自渲染 Javascript 组件,该组件将嵌入到许多第三方网站中。我们的 Javascript 将依赖于几个常见的库(zepto、hogan 等)。
将我们的 Javascript 与污染全局命名空间或干扰第三方站点上的其他 Javascript 隔离的最佳方法是什么?我们应该使用特殊的错误处理注意事项/包装器来确保我们的 Javascript 不会阻止呈现吗?
目标是在第三方站点上嵌入一个脚本,在 DOM 中呈现交互式内容,但在其他方面保持完全隔离。
我们正在构建一个小型的自渲染 Javascript 组件,该组件将嵌入到许多第三方网站中。我们的 Javascript 将依赖于几个常见的库(zepto、hogan 等)。
将我们的 Javascript 与污染全局命名空间或干扰第三方站点上的其他 Javascript 隔离的最佳方法是什么?我们应该使用特殊的错误处理注意事项/包装器来确保我们的 Javascript 不会阻止呈现吗?
目标是在第三方站点上嵌入一个脚本,在 DOM 中呈现交互式内容,但在其他方面保持完全隔离。
在阅读了更多关于此的内容后,我将使用基于闭包的包装器和带有 noConflict 模式的 jQuery,如下所示:
(function(window, document, undefined){
// Inject contents of jquery-2.0.3.min.js here
var $ = jQuery.noConflict(true); //Remove global jQuery and alias locally
//Define all application classes and init here using local $
})(window, document);