有人可以带我走过这条线

var types = { "Grocery": "gro", "Restaurant": "res", "Bar": "bar", "Pizza Delivery": "piz", "Quick Service": "qui", "Retail": "ret", "Salon": "sal" } $(".type_changer").attr("id", types[$(this).text()]); 

我知道类type_changer id正在被改为这个数组的一部分但是我不懂types[$(this).text()]

这条线

 $(this).parents('.select-holder').find('.text').text($(this).text()); 

似乎几乎可以理解,但我对.parents.find('.text').text($(this).text());感到困惑.find('.text').text($(this).text());

$(this).text()接受当前元素的文本(

  • 你在你的情况下循环,除非你的标记已经改变)。

    然后它使用该文本作为types对象的键,当您单击“Grocery”链接时,基本上执行types["Grocery"]

    在JavaScript中,您可以使用types.Grocerytypes["Grocery"]来访问属性,其值为"gro"


    最后一个语句采用相同的“Grocery”测试并将其设置为父class="text"元素的class="text"

    $(this).text()将获取当前DOM元素内的文本,它将使用此文本在数组中查找相应的值(例如types['Restaurant'] )。

    在具有类’type-changer’的每个元素上,将其ID更改为在types映射到元素中的文本的值,例如。

     
    Salon

    将被转换为

     
    Salon