0

我目前正在尝试制作一个程序,用户可以在其中选择他们想要下载的每个图像,然后在不使用任何 zip 文件的情况下下载它们。它目前有效,但它必须为每个链接打开一个新窗口。我想知道是否有人对如何在不为每次下载打开窗口的情况下执行此操作有更好的建议,并且仍然相对容易设置?我目前正在使用来自 joomlaworks sigpro 的 download.php 文件作为简单的下载解决方案,只需在窗口 url 中指向它即可。

我的代码:

$('.finishselect').click(function(){

        $( ".selected" ).each(function () {
            var $href = $(this).parent().children('img').attr('src'),
                $hrefShort = $href.replace('http://example.com/plugins/content/gallery/gallery/thumbs/', 'images\\Pics/');
                window.open("/plugins/content/jw_sigpro/jw_sigpro/includes/download.php?file=" + $hrefShort);
            });
    });
4

1 回答 1

1

您可以使用 iframe 并将 iframe src 设置为下载。

$( ".selected" ).each(function () {
  var $href = $(this).parent().children('img').attr('src'),
                $hrefShort = $href.replace('http://example.com/plugins/content/gallery/gallery/thumbs/', 'images\\Pics/');

  var $iframe = $('<iframe />');
  $iframe.attr('src', "/plugins/content/jw_sigpro/jw_sigpro/includes/download.php?file=" + $hrefShort);

  $iframe.css('visibility', 'hidden');
  $iframe.css('height', '0');

  $iframe.appendTo(document.body);
});

如果你真的想要的话,你可以然后清理 iframe(例如从 DOM 中删除它们),但你不应该这样做。

于 2013-01-23T17:23:58.833 回答