我有一個網站需要通過W3C驗證器上的每個錯誤。我遇到的一些錯誤與圖像的替代文字有關。我寫這一點,添加它的<head>
W3C驗證器忽略jQuery和JavaScript更改後的更改
<script type="text/javascript">
jQuery(document).ready(function($) {
$('img').each(function(){
var $img = $(this);
var filename = $img.attr('src');
$img.attr('alt', filename.substr(filename.lastIndexOf("/") + 1));
});
});
</script>
但是,我看到W3驗證忽略我用JavaScript做任何變化,並採取了HTML頁面只是JavaScript的運行之前。類似的是當我加載一個JS的地圖和W3驗證器認爲它是一個空的元素。
有什麼辦法讓驗證器在檢查頁面之前等待嗎?
沒有,因爲驗證是用來驗證你的HTML。您的HTML應該始終有效,當然_before_任何javascript - 這是因爲那些能力較差,禁用JavaScript的人不會看到您的更改,所以它只是欺騙驗證器。你的JS和你的HTML是分開的。 (還有一點:你已經試圖通過自動化值來欺騙alt標籤,但這不是重點 - alt標籤用於訪問,允許禁用圖片的人看到它們。無論如何,src將會在那裏,所以沒有必要這樣做) – somethinghere