如何解决脚本标签冲突的问题?

Posted

技术标签:

【中文标题】如何解决脚本标签冲突的问题?【英文标题】:How do I resolve this issue with conflicting script tags? 【发布时间】:2016-04-28 12:26:27 【问题描述】:

我整个星期都在研究这个问题,但我自己无法解决,所以我非常感谢你能提供的任何帮助。我使用 html、JS 和 CSS 使视频结束后网页上出现一个模态框。但是,由于格式问题,我需要为移动设备使用不同的视频和模式框。我添加了新的 HTML 和 CSS,以便正确的视频和模式框只会出现在桌面版和移动版上。

不过,我遇到了 JS 的问题 - 无论列出的第二个代码都有效,因此在移动版本或桌面版本的视频结束后会出现模态框,但不是两者兼而有之。我现在明白脚本有冲突,所以第二个有效,而不是第一个。

我寻找解决冲突的解决方案,但我发现没有用。然后我尝试使用基于屏幕宽度 (Change div content if screen resolution is less than?) 的 if else 语句,但这也不起作用。

这是我的两个相互冲突的脚本:

移动

window.onload=function() document.getElementById('mobileVideo').addEventListener('end', showmobileRatings);函数 showmobileRatings() document.getElementsByClassName("modalmobile")[0].style.display='block';

桌面

window.onload=function() document.getElementById('myVideo').addEventListener('end', showRatings);函数 showRatings() document.getElementsByClassName("modalAppear")[0].style.display='block';

或见:http://codepen.io/anon/pen/gPoqjd?editors=011

无论我是在移动设备上还是桌面上,我如何将它们结合起来,让它们都能正常工作?

提前致谢

【问题讨论】:

如何将这些脚本放在页面上? 【参考方案1】:

不要将东西分配给window.onload。它只能容纳一个函数。

请改用addEventListener

addEventListener('load', function(event) 
  console.log("Function 1");
);
addEventListener('load', function(event) 
  console.log("Function 2");
);

【讨论】:

以上是关于如何解决脚本标签冲突的问题?的主要内容,如果未能解决你的问题,请参考以下文章

如何解决Django与Vue语法的冲突

如何解决blur事件和click事件冲突问题

在python程序编写过程中,如何解决模块名称冲突?

如何解决smartgit的冲突问题

如何解决包冲突问题

如何解决包冲突问题