防止Drupal加载其他模块的JavaScript
作者:互联网
我有一个Drupal页面,使用的方式与该网站的所有其他页面截然不同.
我有一个模块可以在此页面上加载一组专用js.我发现我的JS无法与其他模块或drupal核心中的js配合使用.
如何防止其他模块在该特定页面上执行drupal_add_js.
谢谢!
解决方法:
除了破解那些模块代码外,没有其他方法可以阻止其他模块调用drupal_add_js().
对于“一页异常”,您可以实现myModule_preprocess_page()
函数,并用自己的脚本包含标记替换$variables [‘script’]的内容(您可能还需要检查$variables [‘closure’]).
另外,您可以为该页面实现page.tpl.php的特定版本,而只需用自己的输出替换$scripts变量的打印即可.
请注意,尽管这两种解决方法建议在特殊情况下都是有效的解决方案,但我强烈建议您检查一下JavaScript为什么“与其他模块的js不能很好地配合使用”. JavaScript冲突通常表示一个或多个脚本中的错误/草率代码,因此与实施长期难以维护的变通办法相比,花时间查找和修复这些错误可能更好.
标签:drupal-modules,templates,drupal,javascript,preprocessor 来源: https://codeday.me/bug/20191106/2001059.html