Как заменить ссылки на изображения с img src url в Greasemonkey - PullRequest
1 голос
/ 16 января 2011

Из названия это может звучать как дубликат вопроса.Но я прошу помочь в написании сценария Greasemonkey, который берет все изображения, содержащие слово «thumbnails» в URL-адресе src, заменяет «thumbnails» на «images», но затем помещает новый URL-адрес в URL-адрес href (target).

То, что я имею до сих пор:

    for(var iImage=0;iImage<document.images.length;iImage++){
    var imageUrl = document.images[iImage].src;

    if (imageUrl.indexOf("thumbnails") != -1) {
        imageUrl = imageUrl.replace("thumbnails","images")
        document.images[iImage].href = imageUrl;
    }
}

Любая помощь будет оценена.

Ответы [ 2 ]

2 голосов
/ 16 января 2011

теги img не могут иметь href, однако вы можете добавить их в тег привязки с атрибутом href:

for(var iImage=0;iImage<document.images.length;iImage++){
    var imageUrl = document.images[iImage].src;

    if (imageUrl.indexOf("thumbnails") != -1) {
        imageUrl = imageUrl.replace("thumbnails","images");
        document.images[iImage].outerHTML = '<a href ="' +
                              + imageUrl + '" >' 
                              + document.images[iImage].outerHTML + '</a>';

    }
}
1 голос
/ 16 января 2011

Psuedo-код:

var thumblinks=new Array();
for(x=0;x<links.length;x++){
    if(links[x].href.test('thumbnails'))thumblinks[thunblinks.length]=links[x];
}
for(x=0;x<thumblinks.length;x++){
    thumblinks[x].href=thumblinks[x].firstChild.src;
}

Это работает?

...