我有一些js脚本正在我的网站上运行,但我发现一些图像没有显示出来。我只对WordPress有这个问题。所以我有一个暂停按钮,它按预期显示。当您按下按钮时,它会按预期暂停脚本。发生这种情况时,将添加一个新图像以替换“暂停”按钮。图像将插入到页面中。所以它在播放时是这样的
<img id="pauseplay" src="http://www.example.com/wp-content/themes/theme/images/pause.png" alt="">
当我按下暂停按钮时,它变为
<img id="pauseplay" src="images/play.png" alt="">
显然,这是绝对到相对链接的问题,但我不知道如何解决它。为什么相对链接在WordPress中不起作用?
SO网友:Mark Kaplun
相对URL在wordpress中运行良好,这就是您失败的原因。一般来说,永远不要对资源使用相对URL,因为当站点使用“永久链接”时,它们很可能会失败。
您所做的最好的事情是在CSS中“分组”图形资源和样式(其中资源相对于CSS文件而不是HTML URL)。
JS替代方法是将站点/主题/插件的根存储在JS变量中,并使用它构建URL。下面的代码将考虑站点根目录,但您很可能需要主题或插件根目录。
<script>
var homeurl = \'<?php echo home_url()?>\';
.....
pauseImage = homeurl+"images/play.png"; // url to your play image
</script>