2015-10-14 38 views
0

我正在使用我公司的网页。这是我第一个认真的网页,每一行都有很多疑问。现在,我正在一个新闻装载系统上,我已经一个也解决不了:(jquery)从load [ed]获取背景图像路径()HTML元素样式

我加载我使用jQuery负荷消息,附着元件先前定义瓦尔:

var newArticle = $('<a href="'+path + i +'.html"><div id="news-article"></div></a>'); 

var newArticleChild = newArticle.children(); //'cause i want to load articles inside #news-article, not <a></a> 

var image = $('<div></div>'); 
var title = $("<div></div>"); 
var tag = $("<div></div>"); 

$(image).load(path + i + ".html #main-image"); 
$(title).load(path + i + ".html h1"); 
$(tag).load(path + i + ".html #tag");  

$("#news").append(newArticle); //Apend articles parent to an existing page element 

newArticleChild.append(image); 
newArticleChild.append(title); 
newArticleChild.append(tag); 

HTML -------------- 

<div id="main-image" style="background-image: url(../../assets/images/NewsBackgroundTry.png); 
"></div> 

我不太喜欢这个,因为它会在内部创建另一个div的emty div,但这本身并不是一个错误。

我真的不需要将图像追加到我的页面,因为我想从它是它的样式,它包含在CSS中图像的路径。我这样做是因为我需要应用background-size:cover;风格的形象。

我的问题是,我怎么能从图像变量获得背景图像样式?我尝试了很多东西,看着尽可能多的帖子,但我找不到这个值...

如果解决方案阻止将图像附加到页面上,它会好得多。

谢谢大家,亚伯!

+0

三个Ajax调用来从同一页面获取内容有点极端。做出一个单一的获取请求,并提取三个元素,而不是进行3个Ajax调用。 – epascarello

+0

谢谢,我会做的! –

回答

0

你可以使用var bgImg = image.css('background-image');来获取CSS属性,然后replace讨厌URL(“”)一部分,得到的只是图片的路径。

+0

嗯,我知道应该怎么做,但我无法管理它在这种情况下工作。谢谢.. –