Расширение Google для исправления веб-страницы - PullRequest
0 голосов
/ 13 декабря 2011

Я пытаюсь написать расширение для Chrome, чтобы исправить веб-страницу. У меня нет доступа, чтобы изменить веб-страницу, или я бы сделал это.

Элементы HTML, которые ломают страницу, не имеют идентификаторов, но имеют ИМЯ. Однако, глядя на javascript, он выполняет несколько вызовов document.getElementById () с использованием NAME. Это прекрасно работает в IE, но не в Chrome или Firefox.

Моя идея - написать расширение Chrome для вставки необходимых идентификаторов элементов. Возможно ли это?

background.js:

var dateChange = document.getElementsByName('DateChange');
dateChange.id = 'DateChange';

mainpage.html:

<html>
<head>
<script>
    function do_stuff()
    {
        var elem = document.getElementById('DateChange');
        // do some more stuff
    }
</script>
</head>
<body>
<form name="myForm">
    <input type="hidden" name="DateChange" value="false" />
</form>
</body>
</html>

Ответы [ 2 ]

0 голосов
/ 15 декабря 2011

Я, должно быть, делал что-то не так прежде, когда пытался установить идентификаторы.Тем не менее, я нашел следующее, чтобы работать для моих целей:

var myForm = document.getElementsByName('myForm')[0];
var elLength = myForm.length;
for (i=0; i<elLength; i++)
{
    myForm.elements[i].id = myForm.elements[i].name;
}
0 голосов
/ 13 декабря 2011

Вы должны иметь возможность использовать селекторы атрибутов, такие как

input[name="DateChange"] { color: red }

Также смотрите относительно новые вызовы document.querySelector и document.querySelectorAll.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...