我遇到问题我收到此错误
未捕获的TypeError:数字不是函数
<img ng-src="images/left-arrow.png" onclick="page('previous');" style=" float:left; margin-left:10px; width: 7%; height=7%; margin-bottom:10px;"></img>
<img ng-src="images/right-arrow.png" onclick="page('next');" style=" float:left; margin-left:10px; width: 7%; height=7%; margin-bottom:10px;"></img>
然后是我的Javascript
var page=1;
function page(pcounter)
{
console.log(pcounter);
var data_file = "my link";
var http_request = new XMLHttpRequest();
try{
// Opera 8.0+, Firefox, Chrome, Safari
http_request = new XMLHttpRequest();
}catch (e){
// Internet Explorer Browsers
try{
http_request = new ActiveXObject("Msxml2.XMLHTTP");
}catch (e) {
try{
http_request = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){
// Something went wrong
alert("Your browser broke!");
return false;
}
}
}
http_request.onreadystatechange = function(){
if (http_request.readyState == 4 )
{
// Javascript function JSON.parse to parse JSON data
var data = JSON.parse(http_request.responseText);
var title=[];
var date=[];
var image=[];
var e;
if((pcounter=='next') && (pcounter<data.posts))
{
page+=2;
}
else if((page!=1)&&(pcounter=='back'))
{
page-=2;
}
for (var i in data.posts) {
title[i]=data.posts[i].title;
date[i]=data.posts[i].date;
image[i]= data.posts[i].thumbnail_images.thumbnail.url;
}
for(var e = page; e < 6; e++){
document.getElementById("rtitle" + e).innerHTML=title[e];
document.getElementById("rdate" + e).innerHTML=date[e];
document.getElementById("rimage" + e).src=image[e];
}
}
}
http_request.open("GET", data_file, true);
http_request.send();
}
我已经尝试了我在这里找到的所有解决方案,但没有运气,有人对此有所了解吗?
答案 0 :(得分:1)
您正在声明一个名为page
的函数和变量。函数是JavaScript中的变量,因此您不能同时使用相同的名称。该变量正在覆盖该函数,因为命名函数在JIT编译器中的变量之上被提升,从而导致您的错误。只需重命名其中一个就可以了。
这样的事情(您还必须在任何地方更改名称):
var pageCount=1;
function page(pcounter)