jQuery在自定义插件(elevateZoom)之后加载。导致elevateZoom失败。
有没有解决方法?
请注意:根据政策,我只能更改正文。
<script type="text/javascript" src="/sites/default/files/jquery.elevateZoom.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#zoom_01").elevateZoom();
});
</script>
<p>
<img id="zoom_01" alt="" data-entity-type="" data-entity-uuid=""
data-zoom-image="/sites/default/files/2017-06/Ipad-with-loupe.png"
src="/sites/default/files/2017-06/Ipad-with-loupe-small.png" />
</p>
控制台中的错误消息如下:
Refused to load the script 'https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js' because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-eval' 'unsafe-inline'
实时链接-https://www.workbooks.com/test-jquery-zoom
最佳答案
您的网站具有防止您从CDN加载jQuery的内容安全策略。
您链接的实时站点具有Content-Security-Policy
标头的以下签名:
Content-Security-Policy:script-src 'self' 'unsafe-eval' 'unsafe-inline' https://www.youtube.com/ https://maps.googleapis.com ; object-src 'self'
您需要将
ajax.googleapis.com
域添加到该策略,或者将jQuery托管在已列入白名单的站点之一中。关于javascript - 确保仅在第一个脚本之后加载第二个脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44757912/