Php 动态更改CSS背景图像

Php 动态更改CSS背景图像,php,javascript,html,css,background-image,Php,Javascript,Html,Css,Background Image,我对PHP和Javascript都相当陌生,所以请原谅我的无知和对术语的拙劣使用,但我会尽我所能准确地解释我正在努力实现的目标 我将信息存储在一个PHP数组中,我使用下面的函数调用该数组到我的索引页面(下面的代码位于一个名为articles.PHP的单独PHP文件中,该文件包含在我的index.PHP中): ,图像应放置在您将看到的空圆圈中!任何帮助都会很好,这对我来说很难 您需要删除PHP标记中的引号,看看它是否有效 这样做: document.getElementById('news-img

我对PHP和Javascript都相当陌生,所以请原谅我的无知和对术语的拙劣使用,但我会尽我所能准确地解释我正在努力实现的目标

我将信息存储在一个PHP数组中,我使用下面的函数调用该数组到我的索引页面(下面的代码位于一个名为articles.PHP的单独PHP文件中,该文件包含在我的index.PHP中):


,图像应放置在您将看到的空圆圈中!任何帮助都会很好,这对我来说很难

您需要删除PHP标记中的引号,看看它是否有效

这样做:

document.getElementById('news-img-1').style.backgroundImage = 'url(' + <?php $article["img"]; ?> + ')';
document.getElementById('news-img-1').style.backgroundImage='url(+');

希望有帮助。

比较硬编码的javascript和不起作用的javascript,我注意到您没有在
代码段周围加上双引号。硬编码的显示

= 'url("img/gym-01.jpg")'
但是带有php代码段的代码将生成

 = 'url(img/gym-01.jpg)'
因此,如果您将其修改为

document.getElementById('news-img-1').style.backgroundImage = 'url("'<?php $article["img"]; ?>'")';

修改get\u news\u feed函数,更改
输出的语句以包含数据url属性,如:

$output .= '<div class="news-img" data-url="' . $article["img"] . '">';

jquery语句放在静态js文件中,而不是用php生成脚本。

感谢您的输入Mohammad,。我没有得到JS控制台错误,但图像仍然没有显示与您的想法。对我来说,逻辑会建议它应该工作:)但我猜PHP作为服务器端存在问题?我还尝试在我的PHP数组中包含公共文件路径-“img”=>“,但仍然没有帮助Dom的Joychear,但仍然没有成功。。。我还尝试了document.getElementById('news-img-1')。style.backgroundImage='url('+'');为了合并穆罕默德的输入,我自己做了大量的研究来尝试解决这个问题,但我发现很短,我真的认为这将是一个简单的问题…看看你网站上的脚本,第一条注释行看起来几乎是对的,除了散落的无关单引号。在“url(“”+“”)”部分中,第二个单引号应为双引号,“+”);最后需要"); ... 我认为您的问题只是将php结构化以输出正确的语法,也许执行
就可以了。我想我应该修改
获取新闻订阅
函数,并将
输出的输出更改为包含数据url属性。。。像<代码>$output.=''然后添加一个jquery语句,如
$(.news img”).each(function(){$(this.css(“背景图像”,“url”(++$(this.data)(“url”)+);})。。。jquery语句放在静态js文件中,而不是用php生成脚本
= 'url("img/gym-01.jpg")'
 = 'url(img/gym-01.jpg)'
document.getElementById('news-img-1').style.backgroundImage = 'url("'<?php $article["img"]; ?>'")';
$output .= '<div id="news-img-1">';
$output .= "</div>";
$output .= '<div class="news-img"><img src="' . $article["img"] . '"></div>' ;
article.img-wrapper {
    position: relative;
}

div.news-img {
    position: absolute;
    top: 0;
    z-index: -1000;
}
$output .= '<div class="news-img" data-url="' . $article["img"] . '">';
$(".news-img").each( function() { 
        $(this).css("background-image", "url(" + $(this).data("url") +")" ); 
    });