Konieczne są nawiasy klamrowe, ponieważ przekazujesz literał obiektu jako parametr do funkcji jQuery .css
. Według documentation można go używać tak:
.css (właściwości)
Właściwości
Typ: PlainObject
Przedmiotem par właściwość wartości ustawić.
Tak więc width
i height
nie są dwoma różnymi parametrami. Są to dwie różne właściwości pojedynczego obiektu, w którym nazwa właściwości jest stylem do zmiany, a właściwość wartością do zmiany.
Mozilla ma następujący powiedzieć o literałach obiektów:
Przedmiotem dosłownym jest lista zero lub więcej par nazw właściwości i związanych z nimi wartości obiektu, umieszczone w nawiasie klamrowym ({}).
Jeśli z jakiegoś powodu chcą uniknąć za pomocą literałów obiektów, można zrobić to tak:
target.css("width", target.width()*2);
target.css("height", target.height()*2);
albo to:
target.width(target.width()*2);
target.height(target.height()*2);
nawiasy są składni JS za określenie obiekt, który podajesz do metody 'css()'. Obiekt może zawierać wiele właściwości, które powinny zostać zaktualizowane w jednym wywołaniu. –
Ponieważ javascript nie ma bezpośredniej obsługi składni dla nazwanych parametrów, używa idiomu przekazywania literału obiektowego, aby osiągnąć to samo. –