通过单击按钮更改背景图像(使用jQuery和API)
Change background image with click on button (using jQuery and API)
我正在使用一个 API,该 API 将随机 URL 返回到随机图像并将其设置为正文的背景图像。如何在每次单击按钮后进行更改?我有下面的代码,但这不起作用。
function changeImage() {
$.getJSON("https://api.unsplash.com/photos/random?client_id=336b527b2e18d045045820b78062b95c825376311326b2a08f9b93eef7efc07b", function(result){
var randomPhoto = result.urls.full;
console.log(randomPhoto);
$('body').css('background-image', 'url(randomPhoto)');
});
};
我在按钮上使用jQuery单击事件来调用函数。
$("#button").on("click", function() {
changeImage();
});
});
函数每次都会加载一个新的带有图像的 JSON 对象,但背景图像不会改变......
正如DynoMyte所建议的那样,你应该这样做:
function changeImage() {
var src = "https://api.unsplash.com/photos/random?client_id=336b527b2e18d045045820b78062b95c825376311326b2a08f9b93eef7efc07b";
$.getJSON(src, function(result){
$('body').css('background-image', 'url('+ result.urls.full +')');
});
};
更改以下内容:
$('body').css('background-image', 'url(randomPhoto)');
对此:
$('body').css('background-image', 'url('+randomPhoto+')');
相关文章:
- 如何使用jQuery自动打开页面上的所有链接
- 如何使用jquery在填充自动完成的值后使文本框只读
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 如何在Angular2中使用jQuery插件
- 如何使用jQuery选择下拉列表的值
- 使用JQuery解析JSON嵌套数组
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 如何使用jquery处理php循环通过元素
- 使用jquery将mysql数据获取到新的表行中
- 如何使用jquery Validation验证Formspread
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 使用jQuery动态添加表并在其中动态添加行
- 使用jquery在单击时在单元格中输入值
- 如何使用jQuery在动画中期加速动画
- 如何使用jquery强制一个单词更改大小写等以保留品牌
- 在不使用jquery的情况下查找页面中的所有锚点并附加函数
- 使用JQuery的动态上下文菜单
- 使用jQuery以红色和黑色闪烁文本
- 如何使用jquery更改html中的背景颜色
- 使用jQuery从原始页面内容创建iframe