Ответ 1
Наверное, нет. Лучшим решением может быть использование CSS:
link.css({color: '#9a4d9e',
cursor: 'default'});
Однако .attr('style',)
также удаляет предыдущий встроенный стиль, поэтому он не ведет себя точно так же.
Если вы собираетесь использовать attr
, он должен быть строкой, а не объектом, она не специализируется на работе с атрибутом style
. альтернативой в этом случае является:
link.attr('style', "color:'#9a4d9e';cursor:'default'");
В этом случае кажется более чистым. В других случаях ваш map
упрощает вставку переменных в CSS. map
можно было бы назвать лучше, хотя. Он также имеет ошибку реализации - он добавляет две точки с запятой между атрибутами: color:red;;cursor:default;
Простым решением для удаления стиля предварительного просмотра является вызов .removeAttr('style')
перед вызовом css
.