Otwieranie linków z tablicy.

Otwieranie linków z tablicy.
SE
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 55
0

Mam tablicę pełną linków prowadzących do zdjęć. Nie chcę otwierać każdego linku ręcznie i zapisywać znajdującego się pod nim zdjęcia. Mogę to jakoś zautomatyzować w JavaScript?

Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
3

js open link in new tab / js open link in new window w Google.

Ferdynand Lipski
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 77
3

Szybki przykład:

Kopiuj
...
const arr = new Array(elem1, elem2, elem3, ...);
arr.forEach(function (item) {
    window.open(item);
});

Jednak w obliczu tego zastosowania, nie lepiej użyć wtyczki Simple mass downloader lub czegoś na jej podobieństwo? ;)

SE
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 55
0

@Ferdynand Lipski:

Thx :) To nie do końca są linki a dane zdjęć (Image Data-URL's) dlatego taka wtyczka nie zadziała. Jest może jakiś inny sposób żeby każde z otwartych zdjęć się zapisało?

Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
1

Nie, JS uruchamiany w przeglądarce nie ma dostępu do systemu plików.
Nie wystarczyłoby Ci napisać jakiś skrypt bashowy do tego?

SE
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 55
0
Patryk27 napisał(a):

Nie, JS uruchamiany w przeglądarce nie ma dostępu do systemu plików.
Nie wystarczyłoby Ci napisać jakiś skrypt bashowy do tego?

Nie pomyślałem nawet o tym, spróbuję jutro. Dzięki :)

Haskell
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4700
4
Patryk27 napisał(a):

Nie, JS uruchamiany w przeglądarce nie ma dostępu do systemu plików.
Nie wystarczyłoby Ci napisać jakiś skrypt bashowy do tego?

Nie potrzeba do tego dostępu systemu plików. Za to warto wykorzystać fakt, że przeglądarki mogą ściągać pliki. Mając jakieś dane np. Image Data URL można stworzyć link do pobrania pliku.

Kopiuj
function download(dataurl, filename) {
  var a = document.createElement("a");
  a.href = dataurl;
  a.setAttribute("download", filename);
  a.click();
}

download("data:text/html,HelloWorld!", "helloWorld.txt");

https://jsfiddle.net/qt3mozLe/

Wystarczy podmienić dane "data:text/html,HelloWorld!" i stworzyć link do pobrania pliku PNG.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.