JQuery学习笔记,点击按钮加载更多的图片

利用点击按钮模拟某京,某宝,滚动页面加载图片的效果,代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>Ajax请求</title>
	</head>
	<body>
		<button id="load">加载更多</button>
		<div id="photos">
		</div>
		<script>
			(()=>{
				const photos=document.querySelector("#photos")
				// const.photos=document.getElementById('photos')
				const loadBtn=document.getElementById('load')
                //URL 需要自己申请
				const url='https://apis.tianapi.com/esports/index?key=b28784d07b8a040597XXXX...5&page='
				var page=1
				loadBtn.addEventListener('click',()=>{
					page+=1
					//创建异步请求对象
					//https://www.tianapi.com/#meinv
					let xhr=new XMLHttpRequest()
					//https://www.tianapi.com/gethttp/265
					//open方法的第一个参数是请求的类型,第二个是请求的URL,第三个参数必须设置为true,表示发出的异步请求
					//URl 的结尾加上&num=30表示一次拿30个数据
					xhr.open('get',url+page,
					true)//true表示发的是异步请求
					//绑定事件回调函数,在收到Server返回的数据后要对页面进行局部刷新
					//就绪状态改变的事件
					xhr.addEventListener('readystatechange',()=>{
						//判断请求是否成功
						//405访问方法错,403没有访问权限,401未授权;4--请求错
						//5--Server错了(一般看不到,一般是Server升级维护中)
						//3--重定向(曾经请求过,数据还是原来的数据)
						if(xhr.readyState ==4 &&xhr.status==200){
							alert(xhr.responseText)
							//alert(xhr.responseText)传出的是字符string
							//将返回的JSON字符串解析成Javascript对象
							let json=JSON.parse(xhr.responseText)
							json.result.newslist.forEach((mm)=>{
								//console.log(mm.picUrl)
								let img=document.createElement('img')
								img.src=mm.picUrl
								img.width='300'
								console.log(img)
								photos.insertBefore(img, photos.firstElementChild)
								
							})
							
						}
					})
					//发出异步请求
					xhr.send()
				})
				
			})()
		</script>
	</body>
</html>

运行完成可以点击每一次按钮加载不同的图片

使用JQuery方法改写后的代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>Ajax请求</title>
	</head>
	<body>
		<button id="load">加载更多</button>
		<div id="photos">
		</div>
		<script src='js/jquery-3.7.1.min.js'></script>
		<script>
			$(()=>{
				const url='https://apis.tianapi.com/esports/index?key='
				var page=0
				$('#load').on('click',(evt)=>{
					page+=1
					let date={"key"="b28..........575","page":page}
					//$对象getJSON方法可以执行异步请求(get请求)获得服务器返回的JSON格式
					//第一个参数是请求的URL(统一资源定位符)
					//第二个参数是要发送给Server的数据(JSON格式),如果没有数据发送给服务器可以为空
					//第三个参数是请求成功服务器返回数据之后要执行的回调函数,其参数为服务器的JSON对象
					$.getJSON(url,data,(json)=>{
						json.result.newslist.forEach((mm)=>{
							console.log(mm.picUrl)
							$('#photos').prepend($('<img>').attr('src',mm.picUrl).attr('width','300'))
							
						})
					})
				})
			})
		</script>
	</body>
</html>

Jquery 的$.ajax({})使用

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>Ajax请求</title>
	</head>
	<body>
		<button id="load">加载更多</button>
		<div id="photos">
		</div>
		<script src='js/jquery-3.7.1.min.js'></script>
		<script>
			$(()=>{
				const url='https://apis.tianapi.com/esports/index'
				var page=0
				$("#load").on("click",(evt)=>{
					page += 1
					let data={"key":"b287.......75","page":page}
					$.ajax({
						"url":url,
						"type":"get",//请求方式:可以是post,get,delete,put,patch 默认是get请求,可以省略不写
						"data":data,
						"datatype":"json",//返回的数据类型,XML:XML类型;text:文本类型 默认是JSON格式,可以省略不写
						"headers":{},//请求头没有东西可以忽略不写
						"success":(json)=>{
							json.result.newslist.forEach((mm)=>{
									console.log(mm.picUrl)
									$('#photos').prepend($('<img>').attr('src',mm.picUrl).attr('width','300'))
									
								})
							
						},//请求成功了干什么
						"errors":(error)=>{},//请求失败了干什么 可以省略
					})
					
				})
					
			})
		</script>
	</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/980571.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

eMMC安全简介

1. 引言 术语“信息安全”涵盖多种不同的设计特性。一般而言&#xff0c; 信息安全是指通过实践防止信息遭受未经授权的访问、使用、披露、中断、篡改、检查、记录或销毁。 信息安全的三大核心目标为 机密性&#xff08;Confidentiality&#xff09;、完整性&#xff08;Integr…

SpringBoot新闻推荐系统设计与实现

随着信息时代的快速发展&#xff0c;新闻推荐系统成为用户获取个性化内容的重要工具。本文将介绍一个幽络源的基于SpringBoot开发的新闻推荐系统&#xff0c;该系统功能全面&#xff0c;操作简便&#xff0c;能够满足管理员和用户的多种需求。 管理员模块 管理员模块为系统管…

zookeeper-docker版

Zookeeper-docker版 1 zookeeper概述 1.1 什么是zookeeper Zookeeper是一个分布式的、高性能的、开源的分布式系统的协调&#xff08;Coordination&#xff09;服务&#xff0c;它是一个为分布式应用提供一致性服务的软件。 1.2 zookeeper应用场景 zookeeper是一个经典的分…

Java 调试模式下 Redisson 看门狗失效

一、场景分析 前几天在做分布式锁测试&#xff1a; 在调试模式下&#xff0c;lock.lock() 之后打上断点&#xff0c;想测试一下在当前线程放弃锁之前&#xff0c;别的线程能否获取得到锁。 发现调试模式下&#xff0c;看门狗机制失效了&#xff0c;Redis 上 30 秒后&#xff0…

FFmpeg入门:最简单的音频播放器

FFmpeg入门&#xff1a;最简单的音频播放器 欢迎大家来到FFmpeg入门的第二章&#xff0c;今天只做一个最简单的FFmpeg音频播放器&#xff1b;同样&#xff0c;话不多说&#xff0c;先上流程图 流程图 以上流程和视频播放器的解码过程基本上是一致的&#xff1b; 不同点在于 S…

基于Python Django的人脸识别上课考勤系统(附源码,部署)

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

【小羊肖恩】小羊杯 Round 2 C+K

题目链接&#xff1a;https://ac.nowcoder.com/acm/contest/100672#question C.是毛毛虫吗&#xff1f; 思路&#xff1a; 其实很简单&#xff0c;假设我们要满足题目所给条件&#xff0c;那么这个毛毛虫最坏情况下肯定是一条如下图所示的无向图 右端省略号为对称图形 &…

PyCharm怎么集成DeepSeek

PyCharm怎么集成DeepSeek 在PyCharm中集成DeepSeek等大语言模型(LLM)可以借助一些插件或通过代码调用API的方式实现,以下为你详细介绍两种方法: 方法一:使用JetBrains AI插件(若支持DeepSeek) JetBrains推出了AI插件来集成大语言模型,不过截至2024年7月,官方插件主要…

安装 Open WebUI

2025.03.01 早上 我已经安装了ollama 和deeseek模型 &#xff08;本地部署流水账之ollama安装Deepseek安装-CSDN博客&#xff09;&#xff0c;然后需要个与模型沟通的工具&#xff08;这么说不知道对不对&#xff09;。 刚开始用的chatbox&#xff0c;安装很方便&#xff0c;…

java后端开发day25--阶段项目(二)

&#xff08;以下内容全部来自上述课程&#xff09; 1.美化界面 private void initImage() {//路径分两种&#xff1a;//1.绝对路径&#xff1a;从盘符开始写的路径 D:\\aaa\\bbb\\ccc.jpg//2.相对路径&#xff1a;从当前项目开始写的路径 aaa\\bbb\\ccc.jpg//添加图片的时…

基于Spring Boot + Vue的常规应急物资管理系统设计与实现

大家好&#xff0c;今天要和大家聊的是一款基于Spring Boot Vue的“常规应急物资管理系统”的设计与实现。项目源码以及部署相关事宜请联系我&#xff0c;文末附上联系方式。 项目简介 基于Spring Boot Vue的“常规应急物资管理系统”设计与实现的主要使用者分为管理员、员工…

SpringCloud + Spring AI Alibaba 整合阿里云百炼大模型

一、前言 记录一次自己使用微服务整合阿里云的百炼大模型&#xff0c;需要用到Redis来记录最近五条信息&#xff0c;已能够保证上下文的连通性&#xff0c;Ai和用户之间的对话是使用的MongoDB来进行存储。然后我这篇文章是介绍了两种请求方式&#xff0c;一种是通过Http请求&a…

(贪心 合并区间)leetcode 56

思路来源&#xff1a;代码随想录--代码随想录_合并区间题解 首先用lambda 按照左界值升序排序 建立答案的二维数组&#xff0c;将第一个行区间放入&#xff0c;判断从第二行开始 第i行的左区间一定大于第i-1行的左区间&#xff08;排序过了&#xff09;&#xff0c;所以只判断…

CAN总线通信协议学习4——数据链路层之仲裁规则

CAN总线只有一对差分信号线&#xff0c;同一时间只能有一个设备操作总线发送数据若多个设备同时有发送需求&#xff0c;该如何分配总线资源? 解决问题的思路&#xff1a;制定资源分配规则&#xff0c;依次满足多个设备的发送需求&#xff0c;确保同一时间只有一个设备操作总线…

Kubespray部署企业级高可用K8S指南

目录 前言1 K8S集群节点准备1.1 主机列表1.2 kubespray节点python3及pip3准备1.2.1. 更新系统1.2.2. 安装依赖1.2.3. 下载Python 3.12源码1.2.4. 解压源码包1.2.5. 编译和安装Python1.2.6. 验证安装1.2.7. 设置Python 3.12为默认版本&#xff08;可选&#xff09;1.2.8. 安装pi…

互推机制在开源AI智能名片2+1链动模式S2B2C商城小程序源码推广中的应用探索

摘要&#xff1a; 在数字化营销时代&#xff0c;开源AI智能名片21链动模式S2B2C商城小程序源码作为一种创新的技术解决方案&#xff0c;正逐步成为企业数字化转型的重要工具。然而&#xff0c;面对激烈的市场竞争&#xff0c;如何高效推广这一前沿技术产品&#xff0c;成为开发…

波导阵列天线 学习笔记11双极化全金属垂直公共馈电平板波导槽阵列天线

摘要&#xff1a; 本communicaition提出了一种双极化全金属垂直公共馈电平板波导槽阵列天线。最初提出了一种公共馈电的单层槽平板波导来实现双极化阵列。此设计消除了传统背腔公共馈电的复杂腔体边缘的必要性&#xff0c;提供了一种更简单的天线结构。在2x2子阵列种发展了宽十…

腾讯游戏完成架构调整 IEG新设五大产品事业部

易采游戏网2月28日独家消息&#xff1a;继1月份腾讯天美工作室群完成内部组织架构调整后&#xff0c;腾讯旗下互动娱乐事业群&#xff08;IEG&#xff09;再次宣布对组织架构进行优化调整。此次调整的核心在于新设立了五大产品事业部&#xff0c;包括体育产品部、音舞产品部、V…

Vue3国际化开发实战:i18n-Ally + vue-i18n@next高效配置教程,项目中文显示

本文详解 Vue3 国际化开发全流程&#xff1a;从安装 vue-i18nnext 到配置多语言文件&#xff08;JSON/YAML&#xff09;&#xff0c;结合 i18n-Ally 插件实现高效翻译管理。重点涵盖&#xff1a; 工程配置&#xff1a;创建 i18n 实例、模块化语言文件结构&#xff08;支持命名…

【愚公系列】《Python网络爬虫从入门到精通》036-DataFrame日期数据处理

标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。近期荣誉2022年度…