簡體   English   中英

“此時元素div上不允許使用屬性名稱”

[英]“Attribute name not allowed on element div at this point”

我收到一個W3V驗證器錯誤,我無法理解:

第31行,第61列:此時元素div上不允許使用屬性name

這就是這一行:

<div name="message" class="jGrowl bottom-right errorGrowl"></div>

完整的HTML:

<!DOCTYPE html>
<html>
    <head>
        <title>jGrowl</title>

        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>     
        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.min.js"></script>

        <script type="text/javascript" src="data/awo-jgrowl.js"></script>
        <script type="text/javascript" src="data/shortcut.js"></script>

        <link rel="stylesheet" type="text/css" href="data/awo-jgrowl.css">

        <script type="text/javascript">
            $(document).ready(function() {
                $('div[name=message]').awomsg('Input message', {sticky: true});
            });

            shortcut.add("m",function() {
                $('div[name=message]').awomsg('Input message', {sticky: true});
            });

            shortcut.add("h",function() {
                alert('ur doin it wrong');
            });
        </script>

    </head>
    <body>
        <div name="message" class="jGrowl bottom-right errorGrowl"></div>
    </body> 
</html>

我找到了一些來自:

標記驗證錯誤:“此時元素上不允許使用屬性名稱”錯誤#HTML5

如果您打算定義自定義屬性,則必須在屬性前添加“ data- ”。

所以在這種情況下,名稱將是: data-name=""

你可以用'div[data-name="value"]'來引用它。

錯誤消息似乎很自我解釋。 您不能在div標簽上使用name屬性。 所以你的代碼看起來像這樣:

<div id="message" class="jGrowl bottom-right errorGrowl"></div>

然后使用id選擇器:

$('div#message')...

div元素沒有name屬性。

如果要唯一標識一個,請使用id

如果要將one標記為組的成員,請使用class

您可以使用name屬性(尚未棄用)的唯一位置是表單控件( inputselecttextareabutton )。

這是一個遲到的回復,但由於此頁面剛出現在搜索中:

由於某些元素上不允許使用name屬性,並且在您可能不需要的表單中具有特殊意義,但任何以“data-”開頭的屬性名稱都可以用於您自己的目的,我建議使用“數據名稱” “屬性,像這樣:

<div data-name="message" class="jGrowl bottom-right errorGrowl"></div>

然后你可以寫:

$('[data-name="message"]').text("Here is a new message!");

否則通過jQuery操縱div。

數據屬性的使用具有以下優點:它不太可能與您的前端設計人員為CSS目的使用ID和類名進行沖突。

在我們的辦公室,我們了解到ID和類是為CSS保留的,JavaScript開發人員應該不管他們。 相反,前端設計人員可以更改大多數事物的ID,類甚至元素類型,只要它們不會混淆數據屬性。

name屬性不是DIV元素規范的一部分。 一般來說, name僅對表單元素有效。

請參閱: http//www.w3schools.com/tags/tag_div.asp

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM