你不能用纯 HTML 做到这一点,你有两种方法来解决这个问题
- 如果您喜欢标记语言,您可以使用带有 if else 标记的 xsl
- 使用 Javascript 并检查你是否在空中图像上进行空中表演,如果你不是在空中表演
对您来说,更好的方法是更改您网站中的一些 javascript 代码..
你应该覆盖 ohrdlog.LoadOnAir 然后你有两种方法:
- 更改http://www.hrdlog.net/hrdlog.js源代码并重写 LoadOnAir 函数
- 在加载http://www.hrdlog.net/hrdlog.js后使用插入脚本标签覆盖 LoadOnAir 函数
我为您选择 2 号,因为我认为您无法更改从另一个域地址加载它的脚本...现在您应该在这部分之后插入此代码:
<script type="text/javascript" language="javascript" src="http://www.hrdlog.net/hrdlog.js"></script>
您可以在 HrdLog.prototype.ShowOffAir 函数中找到离线图像的链接,现在我将其指向http://2.bp.blogspot.com/_Dr3YNV7OXvw/TGNNf561yQI/AAAAAAABIk/-E2MB4jLP_o/s400/Off-Air.jpg:
<script type="text/javascript" language="javascript">
HrdLog.prototype.ShowOffAir = function() {
return '[<img src="https://i.stack.imgur.com/WEr1B.jpg" height="33" width="65" />][2]';
}
HrdLog.prototype.LoadOnAir = function() {
var t = this;
var async = new Async();
async.complete = function(status, statusText, responseText, responseXML, obj) {
if (status == 200) {
txt = '';
var xmldoc = responseXML;
var onairdoc = xmldoc.getElementsByTagName('OnAir');
if (onairdoc.length == 1) {
onair = onairdoc.item(0);
if (onair.getElementsByTagName('oa_QRZ').length > 0) {
txt += '<img src="http://www.hrdlog.net/images/onair.gif" height="33" width="65" /><br/>';
txt += '<font size="+1">' + onair.getElementsByTagName('oa_QRZ')[0].childNodes[0].nodeValue + ' is on air</font><br/>';
txt += '<b>';
txt += FormatNumber(onair.getElementsByTagName('oa_Frequency')[0].childNodes[0].nodeValue) + ' ';
try {
txt += onair.getElementsByTagName('oa_Mode')[0].childNodes[0].nodeValue + '</b><br/>';
txt += onair.getElementsByTagName('oa_Radio')[0].childNodes[0].nodeValue + '<br/><br/>';
} catch (e) { }
//txt += onair.getElementsByTagName('oa_Status')[0].childNodes[0].nodeValue + '<br/>';
}else{
txt += t.ShowOffAir();
}
}else{
txt += t.ShowOffAir();
}
element = document.getElementById('hrdlog-oa');
if (element != null) {
element.innerHTML = txt;
}
} else {
alert('Error\n' + statusText);
}
}
if ((new Date().getTime() - this._lastLoadOnAir.getTime()) > 14500) {
this._lastLoadOnAir = new Date();
async.req(this._host + 'hrdlog.aspx?onair=' + this._qrz, this);
}
}
</script>