對於HTML中的img
標記,我們有替代文本alt
屬性,該標記將在圖像未出現時顯示。我也嘗試使用iframe
的標籤。iframe的替代文本
<iframe src="www.abc.com" alt="Web site is not avaialable">
但是,當給出src=""
時,替代文字不會出現。只是想知道,如果我沒有給出src
,我是否可以用其他方式實現替代文本?
對於HTML中的img
標記,我們有替代文本alt
屬性,該標記將在圖像未出現時顯示。我也嘗試使用iframe
的標籤。iframe的替代文本
<iframe src="www.abc.com" alt="Web site is not avaialable">
但是,當給出src=""
時,替代文字不會出現。只是想知道,如果我沒有給出src
,我是否可以用其他方式實現替代文本?
自從我第一次嘗試誤解了你的問題,讓我們試試這個:
<script>
$(function() {
$("iframe").not(":has([src])").each(function() {
var ifrm = this;
ifrm = (ifrm.contentWindow) ? ifrm.contentWindow : (ifrm.contentDocument.document) ? ifrm.contentDocument.document : ifrm.contentDocument;
ifrm.document.open();
ifrm.document.write($(this).attr("alt"));
ifrm.document.close();
});
});
</script>
這將無論是讀了「ALT」標記值的Iframe沒有src屬性或具有空值的src屬性,並將alt文本寫入該iframe的正文中。
從Write elements into a child iframe using Javascript or jQuery
我不知道在任何一種簡單的方法的iframe的方式來捕獲404級的響應,但是你可以用一些jQuery的陷阱是:
<iframe id="myFrame"></iframe>
<script>
$(function() {
$.ajax({
url: "http://www.abc.com",
success: function (data) {
$("#myFrame").html(data);
},
error: function() {
$("#myFrame").html("Web site is not avaialable");
}
});
</script>
此方法唯一的問題是,與正常的iframe src不同,ajax將限於請求位於同一域下的URL或允許通過Access-Control-Allow-Origin頭進行跨域訪問。 –
我只是想在僅顯示src =「」時顯示替代文字。我不想陷入404響應。將嘗試您提供的腳本。 –
我對阿賈克斯一無所知。我試過一個例子,但iframe或文本都顯示出來。 –
的< IFRAME元素>沒有按」 t支持alt屬性,但它支持longdesc。儘管如此,HTML規範並沒有規定瀏覽器如何處理長描述(或替代)文本。保證任何特定行爲的唯一方法是使用JavaScript。下面是使用jQuery一個未經考驗的例子:
// Not tested
$('iframe').each(function() {
if ($(this).attr('href') == '') {
// Do something with $(this).attr('longdesc')
}
});
會BTW試試這個.. –
雖然不能幫助「最乾淨」的解決方案,另一種選擇是使用你的CSS「隱藏」下iframe
一個空的圖像位置和z索引。這將爲您提供真正的替代文本的所有元數據優勢,而無需進入任何複雜的腳本。
如果您只是希望它作爲佔位符顯示,直到iframe
完成加載,這也很好。
- 我已經開始根據這個代碼此琴:http://jsfiddle.net/gnvE9/1/ –
我測試的是:
IFRAME我無法通過嵌入到HTML測試你給出的代碼?我的意思是,我不能像這樣測試它?對不起,新手在這。 –