请教WebBrowser获得网页图片地址

dongmei757 2011-09-25 11:46:10
请教使用WebBrowser打开网页,如何获得网页背景图片的地址,网页背景图片使用css生成的,不是:<BODY background=img/bg2.gif >这样的。

网页代码如下:

<html>
<head>
<title>背景图像 </title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
body {
background-image: url(images/bg.jpg);
}

.Div1{
background:url("logo.jpg");
}
</style>
</head>
<body>
<table width="200" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><div id = 'bgDiv' class= "Div1" style= "width: 150px; height: 100px ">网页背景A</div></td>
</tr>
</table>
</body>
</html>


经过搜素,找到了<BODY background=img/bg2.gif >背景图片地址获得的方法:

var
doc: IHTMLDocument2;
begin
doc := webbrowser1.document as IHTMLDocument2;
ShowMessage( doc.body.getAttribute('background', 0));
end;

http://topic.csdn.net/u/20090824/13/D5404AA6-A281-4DB6-BD00-F270D4AE9085.html

但这个帖子中showmessage(WebBrowser1.OleObject.document.getElementById('bgDiv').style.BackGroundImage);
获得style的方法测试获得div背景图片地址为空字符窜。

请教使用showmessage(WebBrowser1.OleObject.document.getElementById('bgDiv').style.BackGroundImage);
这种方法,如何获得背景图片地址?我事哪里写错了?


var
Elem: IHTMLElement;
begin
memo1.Clear;
Elem := GetElementById(webbrowser1.Document,'bgDiv') as IHTMLElement;
if Assigned(Elem) then
begin
ShowMessage('Tag name = <' + Elem.tagName + '>'#10 +'Tag id = ' + Elem.id + #10 +'Tag innerHTML = "' + Elem.innerHTML + '"');
memo1.Lines.Add(Elem.Style.backgroundImage);
end;
end;


使用上面代码可以获得id是bgDiv的div的Tag name,Tag id,和Tag innerHtml但就是获得不到他的背景图片地址。
如果不遍历CSS文件,使用上面的方法能获得到背景图片地址么?
...全文
190 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
s11ss 2011-09-25
  • 打赏
  • 举报
回复
WebBrowser1.OleObject.document.getElementById('bgDiv').currentStyle.BackGroundImage

WebBrowser1.OleObject.document.body.currentStyle.BackGroundImage

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧