Злоупотребление строковыми операциями JavaScript

У меня есть эта функция в JavaScript:

g.changeImage = function (a) {
    h.src = "image" + a + ".png";
};

Используется так:

g.changeImage(2);

И это меняет образ ч. Проблема в том, что он не может использовать изображение из другого каталога, кроме текущего.

Я пишу "аддон" для сайта, который должен подключиться к существующему сценарию и изменить несколько вещей. Один из них требует изменения h.src, Можно ли обмануть браузер и изменить адрес h на собственный URL, используя только данную функцию?

Я не могу получить доступ h напрямую, ни изменять существующий скрипт на сайте. Я могу использовать только данную функцию.

Спасибо за любую помощь.

1 ответ

Один из вариантов, который я могу придумать, - переписать функцию:

Старая функция:

g.changeImage = function (a) {
    h.src = "image" + a + ".png";
    alert(h.src);
};
g.changeImage("test.png")

Новая функция:

g.changeImage = function (a) {
    h.src = "test - new url " + a + ".png";
    alert(h.src);
}
g.changeImage("test")

Вот быстрый пример того, как вы можете поиграть и посмотреть, сработает ли это для того, что вам нужно: http://jsfiddle.net/2BsQP/

Другие вопросы по тегам