[英]Printing out HTML via an Ajax-Request that is having errors stops further JS from working
我对自己的网站做了一些实验。 我有一个网站,那是空的。 然后,它向收集随机网站的php文件发出AJAX请求。 通过使用多个随机词收集网站,并用它们向Google进行搜索请求并选择随机结果。 然后,使用curl,我将遵循该结果并打印出内容,并将我的ajax请求中的设置为我的html。 然后,通常应收集下一页。
但是,问题在于,网站加载后,网站本身存在JavaScript错误(可能是由于路径或其他原因?)
我该如何解决? 这是我的代码。 正如我说的,这只是一个实验,所以我没有使用原型,类,测试,注释或其他任何东西,只是愚蠢地写下了代码
<section id="content">
</section>
<script type="text/javascript" src="https://code.jquery.com/jquery-2.2.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
newSite();
function newSite()
{
$.ajax({
url: 'sites.php',
dataType: 'html'
}).done(function(data) {
$('#content').html(data);
$('#content').scrollTop(300);
newSite();
});
}
});
</script>
这是我获取网站内容并在php文件中打印出来的地方(我在这里没有显示完整的代码,因为有些东西你不需要)
$ch = curl_init();
// set URL and other appropriate options
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_URL, $final);
$content = curl_exec($ch);
echo $content;
$final
是Google搜索结果的网址。 有任何想法吗?
如果要加载随机网站,则不能仅在自己的文档中插入第一页,该网站通常还会加载其他文件,并带有一些相对路径,这些相对路径在您的页面中不起作用(JS,图像,.. )。
您可以剥离JS内容,但是如果没有这些内容,某些站点就会崩溃,即使没有,您仍然可能会丢失某些部分。
除了发送内容外,您还可以从PHP代码发送URL,然后使用window.open
显示目标网站(而window.close
关闭上一个网站)。
例如:
var windowRef = window.open(url, name);
通常,该窗口在新选项卡中打开。 如果name
不为空,则该窗口将重复使用以相同name
打开的选项卡,而不是打开另一个。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.