簡體   English   中英

ReferenceError: $$ is not defined jQuery 錯誤?

[英]ReferenceError: $$ is not defined jQuery error?

下面是一組 div 的簡單示例,可以按其 HTML 內容或自定義屬性值對其進行排序:

按字母順序排序 HTML 內容

按屬性“sortweight”HTML 的值從低到高排序:

我嘗試了以下代碼並出現錯誤

ReferenceError: $$ 未定義

HTML

<div id="sortexample">
    <div class="sortitem" sortweight="5">Pears [sortweight: 5]</div>
    <div class="sortitem" sortweight="3">Apples [sortweight: 3]</div>
    <div class="sortitem" sortweight="1">Cherries [sortweight: 1]</div>
    <div class="sortitem" sortweight="4">Oranges [sortweight: 4]</div>
    <div class="sortitem" sortweight="2">Strawberries [sortweight: 2]</div>
</div>
        

            

JavaScript:

// sort all divs with classname 'sortitem' by html content
function sort_div_content() {
    // copy all divs into array and destroy them in the page
    divsbucket = new Array();
    divslist = $$('div.sortitem');
    for (a=0;a<divslist.length;a++) {
        divsbucket[a] = divslist[a].dispose();
    }

    // sort array by HTML content of divs
    divsbucket.sort(function(a, b) {
        if (a.innerHTML.toLowerCase() === b.innerHTML.toLowerCase()) {
            return 0;
        }
        if (a.innerHTML.toLowerCase() > b.innerHTML.toLowerCase()) {
            return 1;
        } else {
            return -1;
        }
    });

    // re-inject sorted divs into page
    for (a=0;a<divslist.length;a++) {
        divsbucket[a].inject($('sortexample'));
    }
}

// sort by attributes - usage for our example: sort_div_attribute('sortweight');
function sort_div_attribute(attname) {
    // copy all divs into array and destroy them in the page
    divsbucket = new Array();
    divslist = $$('div.sortitem');
    for (a=0;a<divslist.length;a++) {
        divsbucket[a] = new Array();
        // we'vev passed in the name of the attribute to sort by
        divsbucket[a][0] = divslist[a].get(attname);
        divsbucket[a][1] = divslist[a].dispose();
    }

    // sort array by sort attribute content
    divsbucket.sort(function(a, b) {
        if (a[0].toLowerCase() === b[0].toLowerCase()) {
            return 0;
        }
        if (a[0].toLowerCase() > b[0].toLowerCase()) {
            return 1;
        } else {
            return -1;
        }
    });

    // re-inject sorted divs into page
    for (a=0;a<divslist.length;a++) {
        divsbucket[a][1].inject($('sortexample'));
    }
}

我不知道為什么會出現此錯誤

在第五行,它說divslist = $$('div.sortitem'); ,但 $$ 未定義。 您必須使用 $ 而不是 $$。

divslist = $('div.sortitem'); 這樣會更好

暫無
暫無

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

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