我需要从本站库下载所有的图片,但我不知道如何获取它们的URL,也不知道这些URL存储在哪里。
我试着用一些程序下载整个网站,但他们似乎都没有下载菜单。希望有人知道如何做到这一点,而不必手动一个一个。
在这里,我可以看到生成URL的代码:
<script type="text/javascript">
$(function(){
$(".text-frame").not(".default-frame").hide();
$('#menubar .button').hover(function(){
$(this).toggleClass("button-hover");
});
$('#menubar .button').click(function(){
$(".text-frame").hide();
$("#image-viewer").hide();
$(".button").removeClass("button-active");
var showTextframe = $(this).attr("rel");
$("#" + showTextframe).show();
$(this).addClass("button-active");
});
function showImages (imgLinks){
for (var i = 0; i < imgLinks.length; i++){
//$("#image-box").append($('<img>').attr('src', imgLinks[i]));
var $imgSelector = $('<a>'+ (i + 1) +'</a>')
.data('imglink',imgLinks[i])
.click(function(){
$("#image-box").find("img").attr('src', $(this).data('imglink'));
$("#image-links").find('a').removeClass('active');
$(this).addClass('active');
//alert ("I open Image" + $(this).data('imglink'));
});
$("#image-links").append($imgSelector);
$("#image-links").find('a:first').trigger('click');
}
}
$.get("plants_w_links.md", function(semillaMenu){
var markdownConverter = new Showdown.converter();
$semillaMenu = $(markdownConverter.makeHtml(semillaMenu));
$semillaMenu.find("img").each(function(){
var $menuimage = $(this);
var $menulink = $(this).parent("li").find("a");
var menuimages = $menulink.data("menuimages") || [];
menuimages.push($menuimage.attr("src"));
$menulink.data("menuimages",menuimages);
$menuimage.remove();
});
$semillaMenu.find("a").click(function(){
var menuImages = $(this).data("menuimages");
//$("#image-box").empty();
$("#image-links").empty();
if (menuImages){
$("#image-viewer").show();
showImages(menuImages);
}
});
$semillaMenu.addClass("sf-menu sf-vertical");
$('#semilla-menu').html($semillaMenu);
jQuery('ul.sf-menu').superfish({delay:10});
});
});
</script>函数showImages似乎生成了URL,但我不知道该如何处理它。
我在这里发现了许多类似的问题,但他们都在谈论用渐进式URL (如blabla.com/image1.jpg、blabla.com/image2.jpg等)加载图像。但事实并非如此,这些图像是在没有模式的情况下生成的(或者没有任何我可以获得或推断的)。
编辑:,我需要知道这些函数是如何工作的,以便在Chrome检查控制台中运行类似的内容,该控制台为我提供了所有URL,而不是菜单单击选项的URL。
EDIT2:EDIT2频道上的告诉我脚本可能是jQuery,所以我添加了标签。
发布于 2014-07-04 14:33:35
var urls = new Array();
Array.prototype.forEach.call( document.images, function( img ){ urls.push( img.src ) } );
console.log( urls );执行后,这些代码行urls将包含页面上所有图像的源。
发布于 2014-07-07 12:45:24
最后,有人在jQuery聊天告诉我如何解决我的问题。直接加入此链接是答案。这个链接似乎包含了semillaMenu函数格式的菜单的结构,以及在站点上显示图像的过程。
这还不能解决我的问题,因为它只适用于这个案子。我想要的是一种用脚本获取URL的方法,但它解决了我的问题。
因此,如果有人知道如何创建一个脚本,不需要手动处理plants_w_links.md文件,就可以提供所有的图像链接。
https://stackoverflow.com/questions/24576208
复制相似问题