我正在添加一个jQuery脚本,通过Backstretch(https://github.com/srobbin/jquery-backstretch)将全屏图像背景添加到页面。
我遇到的问题是让图像的路径正确,因为我正在使用Wordpress。
这是我到目前为止所得到的:
<script>
jQuery(document).ready(function($){
$(".primary-container").backstretch(
"/library/images/image.jpg");
});
</script>
我尝试在网址的开头使用<?php bloginfo('template_directory') ?>
,但我相信这在jQuery中不起作用。在这种情况下,如何使用链接到图像的网址?
感谢。
答案 0 :(得分:4)
有些评论建议检查路径(只是简单地获取你生成的目录),但我不喜欢这种方法,因为它假设你的主题路径总是一样的。 (如果您重命名主题文件夹,更改主题或只是更改文件夹结构,这可能会改变。)
我通常会在所有主题的<head>
中注入“帮助”脚本。它是一个非常简单的JSON对象,它的名称间隔(以保持全局范围干净)。
<script>
// for bootstrapping page level code
var YOURSITENAME = {
"isFrontPage":<?= (is_front_page() ? 'true' : 'false'); ?>,
"isPage":<?= (is_page() ? 'true' : 'false'); ?>,
"postName":'<?= get_post_name(); ?>',
"templateURI":'<?= get_template_directory_uri(); ?>',
};
</script>
注意标题为“templateURI”的最后一项。在JavaScript中,您现在可以使用命名空间的JSON对象随时访问此值,如下所示:
var myDirectoryPath = YOURSITENAME.templateURI;
或者在您的具体示例中:
var imagePath = YOURSITENAME.templateURI + "/library/images/image.jpg";
jQuery(document).ready(function($){
$(".primary-container").backstretch(imagePath);
});
当然,为自己更改YOURSITENAME
更有意义的命名空间。
玩得开心!