假设我们需要在第三方页面中嵌入小部件。该小部件可能使用jquery库,因此小部件本身携带一个jquery库。假设第三方页面也使用jquery,但是使用的是不同版本。当嵌入小部件时,如何防止它们之间发生冲突?jquery.noConflict 不是一个选项,因为必须调用该方法以加载页面中的第一个jquery库,这意味着第三方网站应该调用它。想法是第三方网站除了将标签与widget的src放在一起以便使用外,不要修改或进行任何其他操作。
同时,这不仅仅是针对jquery的问题——甚至编译过的Google Closure Library都可以作为一个例子。
有哪些解决方法能够隔离不同的JavaScript库,而不是显然的iframe?也许将javascript作为字符串加载,然后将其eval(通过使用Function('code to eval'),而不是eval('code to eval'))到匿名函数中可能会有所帮助?
同时,这不仅仅是针对jquery的问题——甚至编译过的Google Closure Library都可以作为一个例子。
有哪些解决方法能够隔离不同的JavaScript库,而不是显然的iframe?也许将javascript作为字符串加载,然后将其eval(通过使用Function('code to eval'),而不是eval('code to eval'))到匿名函数中可能会有所帮助?