Замена класса элемента
Пытаюсь нацарапать скрипт, который бы искал элемент с определенным классом и заменял его на другой.
Хотелось бы конечно на чистом js. Вот что получилось у меня:
document.getElementsByClassName("vm-button-correct").className += "btn btn-success";
document.getElementsByClassName('vm-button-correct').className.replace(/\bvm-button-correct\b/,'');
Но что-то не работает ((( Вынес скрипт в отдельный файл и подключил в главном файле сайта. Что я сделал не так? Да и еще такое уточнение: у нужного мне элемента нет id только класс и добраться до него я не могу (сайт на cms joomla, пишу свой шаблон и до некоторых файлов нет доступа из шаблона) Помогите пжлст довести код до ума |
метод не кроссбраузерен getElementsByClassName (getElementByClass).
Смотрите здесь: http://javascript.ru/unsorted/top-10...lementsbyclass |
Цитата:
|
document.getElementsByClassName("vm-button-correct")[0].className = "btn btn-success";
|
еще разок)
http_://javascript.ru/unsorted/top-10-functions#8-getelementsbyclass уберите пробел, должно работать |
Цитата:
|
Цитата:
function addClass(o, c){
var re = new RegExp("(^|\\s)" + c + "(\\s|$)", "g")
if (re.test(o.className)) return
o.className = (o.className + " " + c).replace(/\s+/g, " ").replace(/(^ | $)/g, "")
}
function removeClass(o, c){
var re = new RegExp("(^|\\s)" + c + "(\\s|$)", "g")
o.className = o.className.replace(re, "$1").replace(/\s+/g, " ").replace(/(^ | $)/g, "")
}
Только я не пойму что мне где поменять |
тогда подключи jquery (<script src="http_://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>), и попробуй использовать вот это: (http_://www.w3schools.com/jquery/html_removeclass.asp) \ не забыть о пробелах в линках
|
Цитата:
Поэтому и пытаюсь изворачиваться чистым js Никто не поможет допилить верхний скрипт? |
| Часовой пояс GMT +3, время: 18:55. |