我尝试在Chrome中运行this script,但它不起作用。
错误无法读取null 的属性'长度'。
if($("div.diashow").length>0&&$("div.diashow.list").length==0){
jQuery.ajaxSetup({async:false});
var objContent = $("#objectContent");
$("span.prev").remove();
$("span.next").remove();
$("p.next").remove();
$("div.screen img").unwrap();
var numOfSlides = parseInt($("span.volume").text().substr(11));
for(var i=2;i<=numOfSlides;i++){
$.get("document.URL"+"?_slideNumber="+i, function(data) {
var slidesCanvas = $("div.slidesCanvas",data);
$("span.prev",slidesCanvas).remove();
$("span.next",slidesCanvas).remove();
$("p.next",slidesCanvas).remove();
$("div.screen img",slidesCanvas).unwrap();
objContent.append(slidesCanvas);
});
}
}
我试图自己修复它,但由于我有限的javascript知识,我没有成功。为什么此脚本无法在Chrome中运行?它适用于Firefox。
答案 0 :(得分:1)
That userscript使用@require
来加载jQuery,这是一件好事
但是,直接Chrome不支持@require
(Greasemonkey的奇妙功能也不多)。
因此,要在Chrome中按原样使用该脚本,明智的做法是安装并使用Tampermonkey 。与简单的Chrome用户相比,Tampermonkey具有许多优势,易用性,兼容性和功能。
如果您不想使用Tampermonkey,请重写脚本以使用this cross-browser technique for loading jQuery。