Позвольте мне лучше описать, что именно я хочу здесь сделать. Я использую Wikispaces, и по умолчанию, когда пользователь добавляет новую ссылку на страницу на боковой панели навигации, wikispaces вставляет либо один из двух классов: wiki_link или wiki_link_new. Вот как это выглядит ...Как добавить и удалить класс по ссылкам с помощью jQuery?
<a href="/Map+Page" class="wiki_link">Map Page</a><br/>
<a href="/Staff+Olympics" class="wiki_link">Staff Olympics</a><br/>
<a href="/Staff+Meetings" class="wiki_link_new">Staff Meetings</a><br/>
Я хотел бы, чтобы автоматически удалить оба класса (wiki_link и wiki_link_new), и добавить класс к ссылке, которая лучше представляет URL страницы. Итак, для URL/карты + страницы, класс будет добавлен к ссылке, которая является первыми тремя буквами названия ссылки ... map. И тогда, если URL-адрес ссылки имеет два слова (как в/Map + Page), класс также добавит первые 3 буквы второго слова в URL-адресе, которому предшествует тире. Таким образом, для/Карта + Страница, класс должен быть добавлен к этой ссылке будет
class="map-pag"
Или, если это был URL/Персонал + Олимпиада, класс должен быть добавлен бы ...
class="sta-oly"
И я думаю, если бы в URL-адресе a: link было больше двух слов, лишние слова были бы проигнорированы в отношении применения класса CSS к ссылке, обращая внимание только на первые 3 буквы первого слова , затем тире, а затем следуют первые 3 буквы второго слова.
И, кроме всего прочего, я хотел бы удалить все экземпляры <br/>
, которые также по умолчанию вставлены wikispaces.
Так в идеале, я хотел бы решение JQuery, что бы изменить 3: с ссылкой выше этого ...
<a href="/Map+Page" class="map-pag">Map Page</a>
<a href="/Staff+Olympics" class="sta-oly">Staff Olympics</a>
<a href="/Staff+Meetings" class="sta-mee">Staff Meetings</a>
Не уверен, что если мое именование классов являются лучшими. Поэтому, если у вас есть лучшее предложение, я бы хотел это услышать! :)
Спасибо за любую помощь, которую вы можете предоставить!
Хммм ...по какой-то причине трюк CSS, чтобы не показывать теги
, не работает. Тогда я попробую с jQuery. Идем теперь, чтобы попробовать ваше решение, Дуг. –
Я обновил свой ответ, чтобы удалить регулярное выражение и заменить его более очевидным кодом. –
@Spencer B. Очень важно, чтобы '# container' был установлен в любой элемент, окружающий теги' br'. В противном случае это ничего не будет. Если это правильно, вы также можете попробовать '#container br {display: none! Important}' и посмотреть, поможет ли это. –