使用JSON文件运行函数onclick
所以当我点击一个图像时,我试图运行一个函数。它适用于普通图像,但我从reddit JSON文件中获取图像。我需要分别调整图像的大小,但我不知道如何调整。这可能很简单,但我对编码还是新手,所以任何帮助都会很好使用JSON文件运行函数onclick,json,function,onclick,reddit,Json,Function,Onclick,Reddit,所以当我点击一个图像时,我试图运行一个函数。它适用于普通图像,但我从reddit JSON文件中获取图像。我需要分别调整图像的大小,但我不知道如何调整。这可能很简单,但我对编码还是新手,所以任何帮助都会很好 $.getJSON("http://www.reddit.com/r/pcmasterrace/.json?jsonp=?", function (data) { $.each(data.data.children, function (i, item) { IsValidImage
$.getJSON("http://www.reddit.com/r/pcmasterrace/.json?jsonp=?", function (data) {
$.each(data.data.children, function (i, item) {
IsValidImageUrl(item.data.url, function (url, isvalid) {
if (isvalid) {
$('<img/>').attr('src', item.data.url)
.appendTo('#images')
.width(500)
.onclick = function() {Resize()};
}
});
});
});
$.getJSON(“http://www.reddit.com/r/pcmasterrace/.json?jsonp=?,函数(数据){
$.each(data.data.children,函数(i,项){
IsValidImage url(item.data.url,函数(url,isvalid){
如果(有效){
$('
功能正确吗
function Resize() {
if (document.getElementById('<img/>').style.width === "500px") {
document.getElementById('<img/>').style.width = "1000px";
} else {
document.getElementById('<img/>').style.width = "500px";
}
}
function Resize(){
if(document.getElementById(“”).style.width==“500px”){
document.getElementById(“”).style.width=“1000px”;
}否则{
document.getElementById(“”).style.width=“500px”;
}
}
我认为(“”)
可能是错误的。我用('test')测试了它
它成功了,所以我需要它有所不同吗?它与我的测试函数一起工作,所以。单击成功了,所以我认为它试图更改错误的东西。onclick
是DOM元素的属性,而不是jQuery对象。您应该使用单击()
函数添加一个单击处理程序
.getJSON("http://www.reddit.com/r/pcmasterrace/.json?jsonp=?", function (data) {
$.each(data.data.children, function (i, item) {
IsValidImageUrl(item.data.url, function (url, isvalid) {
if (isvalid) {
$('<img/>').attr('src', item.data.url)
.appendTo('#images')
.width(500)
.click(function() {Resize(this)});
}
});
});
});
您试过调试它吗?在chrome或firefox的开发控制台上,您可以使用它。打开开发人员控制台,将调试器行放在您想要查看其变量的函数中。如下所示:function(i,item){debugger;IsValidImageUrl(…
中的“this”是什么?.click?Resize函数只是我给函数的名称,您可以这样做吗?中的this
。click
是被单击的元素。我假设这一点的关键是,当用户单击其中一个图像时,它会调整该图像的大小。是的,这就是重点。有趣吗Action right?函数Resize(){if(document.getElementById('').style.width==“500px”){document.getElementById('').style.width=“1000px”;}否则{document.getElementById('').style.width=“500px”;}
我认为('')可能是错误的。我用('test'测试了它
它成功了,所以我需要它与众不同吗?它与我的测试功能一起工作,所以。单击
成功了,所以我认为它试图改变错误的东西。
function Resize(image) {
if (image.style.width == "500px") {
image.style.width = "1000px";
} else {
image.style.width = "500px";
}
}