0

我一直在为 MyBB 设计一个主题,我正在尝试实现一个 jQuery 背景切换器。我一直在尝试但没有成功。

这是html:

<script src="images/vhut/style/pattern.js" type="text/javascript"></script>
<script type="text/javascript" src="{$mybb->settings['bburl']}/images/image directory/script/cookie.js"></script>
<a href="#" class="pat" id="pat1" style="background:url('images/image directory/style/patterns/pat1.jpg')">click 1</a>
<a href="#" class="pat" id="pat2" style="background:url('images/imag directory/style/patterns/pat2.jpg')">click 2</a>

这是我正在使用的 JS 文件:

$(document).ready(function(){
$('a.default').click(function(e){
        var bg = $(this).css('background');
        $('body').css('background','none')
})

$(".pat").click(function(){
    $("body").removeClass('background');
    if( $('#alpha-style').is(':checked')){
            $('#alpha-style').attr("checked",false);
            $('.bg-alpha').hide();
        }
});

$("#pat1").click(function(){
$(body).css("background", "url(patterns/1.png)");
return false;
});

$("#pat2").click(function(){
$(body).css("background", "patterns/2.png)");
return false;
});
});

图案位于文件夹 images/theme directory/style/patterns js 文件位于 images/theme 目录/style

因此,任何人都可以就我的代码提供帮助或为我得到帮助的错误提供可能的解决方案,非常感谢,

4

1 回答 1

0

图像是相对于文档根目录获取的,因此客户端在example.com/patterns/1.png. 仅仅因为 JS 文件夹在您的 images 文件夹中并不意味着您可以在 JS 中使用资源的相对路径。只需使用

url(/images/image directory/style/patterns/1.png);

还要看看你的控制台。它是你最好的朋友。如果使用 Chrome,请右键单击并检查元素并检查您的网络工具是否有 404 响应。如果使用 Firefox,请立即下载 Firebug 并执行相同操作。它会准确地告诉您正在获取的 URL,您可以在 JS 中进行故障排除以实现适当的响应。

于 2013-01-27T03:28:19.460 回答