Изменить все цвета ссылок на документы Javascript - PullRequest
0 голосов
/ 14 октября 2011

Можно ли как-то изменить все ссылки на моей странице на определенный цвет одновременно?такие как:

document.anchors.style.color = "red";

, вероятно, с функцией onclick, я думаю.Пока не повезло.

Ответы [ 3 ]

4 голосов
/ 14 октября 2011

Может быть динамически создать CSS для этого.

var styleElement = document.createElement("style");
styleElement.type = "text/css";
if (styleElement.styleSheet) {
  styleElement.styleSheet.cssText = "a { color: red }";
} else {
  styleElement.appendChild(document.createTextNode("a { color: red; }"));
}
document.getElementsByTagName("head")[0].appendChild(styleElement);
2 голосов
/ 14 октября 2011

document.anchors возвращают массив, вы должны пройти через них.

var anchors = document.anchors;
for(var i=0, m=anchors.length; i<m; i++){
    anchors[i].style.color = "red";
}
0 голосов
/ 14 октября 2011

Ответ уже получен, но моя версия все равно хороша:)

<html>
    <head>
        <script type="text/javascript">
        var ChangeColors = function() {
            var elem = document.createElement('style');
            elem.setAttribute("type", "text/css");
            var style = document.createTextNode("A, A:hover, A:visited { color: red; }")
            elem.appendChild(style);
            document.getElementsByTagName("head")[0].appendChild(elem);
        }
        </script>
    </head>
    <body>
        <a href="#">Some Link</a><br />
        <a href="http://www.google.com">Some Other Link</a><br />
        <input type="button" onclick="ChangeColors();"/>
        <a href="#">Some Link 2</a><br />
        <a href="#">Some Link 3</a><br />
    </body>
</html>
...