Hybrid App开发之jQuery基础
前言:
前面学习了JavaScript/Html/Css的基础知识,今天学习一下常用js框架jQuery的使用进行快速的开发。
JQuery的基本功能:
- 方位和操作DOM元素
- 控制页面样式
- 对页面事件的处理
- 大量插件在页面中的运用
- 与ajax技术的完美结合
首先先编写一个jquery程序
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>用户信息</title>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
alert("欢迎来到Jquery编程世界");
});
//等价于传统凡事
window.onload=function () {
alert("欢迎来到Jquery编程世界");
};
//等价于
$(function () {
alert("欢迎来到Jquery编程世界");
});
</script>
</head>
<body>
</body>
</html>
在网页加载完毕是会弹出对话框提示。
通过上面额示例,可以看出JQuery的代码风格
- 使用$符号
- 事件操作采用链式调用
JQuery的简单应用
1、)JQuery访问DOM对象
先看下什么是DOM对象
DOM(Document Object Model即文本对象模型),每个页面就是一个DOM对象,通过传统的JavaScript的访问页面中的元素,就是访问DOM对象。
在了解一下什么是jQuery对象?
在JQuery库中通过本身自带的方法获取页面元素的对象,这些对象我们称之为JQuery对象。
举例对比一下两者
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript"> $(function () {
//传统的JavaScript方式
var firstDiv=document.getElementById("first_div");
var secondDiv=document.getElementById("second_div");
secondDiv.innerHTML=firstDiv.innerHTML;
//JQuery方式
firstDiv=$("#first_div");
secondDiv=$("#innerHTML");
secondDiv.html(firstDiv.html());
});
</script>
</head>
<body> <div id="first_div">
<p>
这是第一行
</p>
</div>
<div id="second_div">
<p>
</p>
</div>
</body>
</html>
2、)JQuery控制DOM对象
写一个简单的小例子说明一下,比如我们写一个网页用户输入姓名,年龄,性别然后提交,将信息显示在一个div中。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>填写用户信息</title>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript">
//jquery写法
$(function () {
$("#submitUserData").click(function () {
var name=$("#userName").val();
var age=$("#userAge").val();
var sex=$("#male").is(":checked") ?'男':'女';
var isMarried=$("#isMarried").is(":checked")?"已婚":"未婚";
var userInfoData=
"<p>姓名:"+name+"<br>"
+"年龄:"+age+"<br>"
+"性别:"+sex+"<br>"
+"婚否:"+isMarried+"<br></p>";
var userInfoDiv= $("#userInfoDiv");
userInfoDiv.html(userInfoData);
});
});
//传统写法
function submitUserData() {
var name=document.getElementById("userName").value;
var age=document.getElementById("userAge").value;
var sex=document.getElementById("male").checked ?'男':'女';
var isMarried=document.getElementById("isMarried").checked?"已婚":"未婚";
var userInfoData=
"<p>姓名:"+name+"<br>"
+"年龄:"+age+"<br>"
+"性别:"+sex+"<br>"
+"婚否:"+isMarried+"<br></p>";
var userInfoDiv= document.getElementById("userInfoDiv");
userInfoDiv.innerHTML=userInfoData;
} </script>
</head>
<body> <div>
<h3>请输入以下信息</h3>
输入姓名:<input type="text" name="userName" id="userName"><br>
输入年龄:<input type="number" name="userAge" id="userAge"><br>
选择性别:<input type="radio" name="sex" id="male" checked> 男 <input type="radio" name="sex" id="female">女<br>
是否已婚:<input type="checkbox" name="isMarried" id="isMarried"><br>
<input type="submit" id="submitUserData" onclick="submitUserData()">
</div> <div id="userInfoDiv">
</div>
</body>
</html>
3、)JQuery控制CSS样式
和上面一样,直接写个小例子,看下如何控制css样式的
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JQuery控制css样式</title>
<style type="text/css">
.normal{
color: black;
width: 150px;
height: 30px;
padding: 5px;
}
.clicked{
color: blue;
width: 150px;
height: 30px;
padding: 5px;
} </style>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript"> //JQuery写法
$(function () {
$("#changeCssBtn").click(function () {
$(this).toggleClass("clicked")
});
});
//传统写法
function changeCssBtnClick() {
var className= document.getElementById("changeCssBtn").className;
if(className=="clicked"){
document.getElementById("changeCssBtn").className="normal";
}else{
document.getElementById("changeCssBtn").className="clicked";
}
} </script>
</head>
<body> <div >
<button id="changeCssBtn" class="normal" onclick="changeCssBtnClick()">点击修改css样式</button>
</div> </body>
</html>
总结:
今天简单学习一下JQuery的基础及简单使用。
Hybrid App开发之jQuery基础的更多相关文章
- Hybrid App开发之jQuery选择器
前言: 前面学习了JQuery的简单使用,今天进一步学习一下JQuery的选择器. 什么是选择器? JQuery选择器通过标签名.属性名或者内容对DOM元素进行快速准确的选择,而不必担心浏览器的兼容性 ...
- Hybrid App开发之JavaScript基础
前言: 前面学习了html和css的基本使用,今天开始学习JavaScript的使用. 什么是JavaScript JavaScript是一种基于对象(Object)和事件驱动(Event Drive ...
- Hybrid App开发之jQuery操作DOM
前言: 前面学习了JQuery的选择器,今天开始学习新的知识,JQuery操作DOM元素. 元素属性的访问与设置 attr(name) 获取元素属性 attr(name,value) 单个属性设置 a ...
- Hybrid App开发之css样式使用
前言: 前面学习了html,今天学习一下css的基本使用,看下html与css之间是如何结合来编写前端网页的. CSS 是什么? CSS 是 Cascading Style Sheets(级联样式表) ...
- Hybrid App开发之Html基本标签使用
前言: 前面简单学习了html简单标签的使用,今天学习一下其他的标签的使用. HTML的超链接 1.)创建一个超链接 <div> <p> <a href="ht ...
- iOS 开发之 GCD 基础
header{font-size:1em;padding-top:1.5em;padding-bottom:1.5em} .markdown-body{overflow:hidden} .markdo ...
- ios开发之OC基础-类和对象
本系列的文章主要来自于个人在学习前锋教育-欧阳坚老师的iOS开发教程之OC语言教学视频所做的笔记,边看视频,边记录课程知识点.建议大家先过一遍视频,在看视频的过程中记录知识点关键字,把把握重点,然后再 ...
- ios开发之OC基础-oc小程序
本系列的文章主要来自于个人在学习前锋教育-欧阳坚老师的iOS开发教程之OC语言教学视频所做的笔记,边看视频,边记录课程知识点.建议大家先过一遍视频,在看视频的过程中记录知识点关键字,把把握重点,然后再 ...
- ios开发之OC基础-ios开发学习路线图
本系列的文章主要来自于个人在学习前锋教育-欧阳坚老师的iOS开发教程之OC语言教学视频所做的笔记,边看视频,边记录课程知识点.建议大家先过一遍视频,在看视频的过程中记录知识点关键字,把把握重点,然后再 ...
随机推荐
- java 集合框架(TreeSet操作,自动对数据进行排序,重写CompareTo方法)
/*TreeSet * treeSet存入数据后自动调用元素的compareTo(Object obj) 方法,自动对数据进行排序 * 所以输出的数据是经过排序的数据 * 注:compareTo方法返 ...
- hibernate 使用 hibernate tool 生成配置文件和实体类
安装Hibernate插件 下载所需的Hibernatetools http://www.hibernate.org/6.html 将下载得到的文件解压得到的features和plugins文件夹, ...
- ubuntu实用命令--软件管理
近期重新拿起linux的书看了下,整理了一下linux的命令. ubuntu预装了APT和dpkg ,“APT”是 “Advanced Package Tool”的简写,“dpkg ”是“Debian ...
- 从性能角度看react组件拆分的重要性
React是一个UI层面的库,它采用虚拟DOM技术减少Javascript与真正DOM的交互,提升了前端性能:采用单向数据流机制,父组件通过props将数据传递给子组件,这样让数据流向一目了然.一旦组 ...
- js获取一组不重复的随机数的方法
一.基本思路: 建立一个数组存放所有可以取到的值,每次从该数组中随机取走一个,放到新的数组中,直到完成. 二.实现方法 1.方法一: (1)创建一个数组arr,数组元素为所有可能出现元素的集合: (2 ...
- Centos7 ftp环境搭建
没玩过linux,折腾了半天的ftp,好不容易亲测通过了.不容易啊. 操作环境:vm虚拟机 centos7 首先:搞定网络问题:默认情况下使用ifconfig可以看到虚拟机下是无网络的.(注:虚拟机网 ...
- vue-router2.x
组件中的路由 <router-link to=""></router-link> 无参数 <router-link to="/ar/1&qu ...
- Kafka学习-简介
Kafka是由LinkedIn开发的一个分布式的消息系统,使用Scala编写,它以可水平扩展和高吞吐率而被广泛使用.目前越来越多的开源分布式处理系统如Cloudera.Apache Storm.S ...
- 0.Java并发包系列开篇
在我们想要谈论Java并发包(java.util.concurrent)的时候,这是一个头疼的问题,却又是每个Java工程师不得不掌握的一项技能.一直以来都想写一个Java并发包系列,无奈迟迟没有动手 ...
- 使用NetronGraphLib类库开发Qfd质量屋编制工具
前言 可执行文件下载 QfdHouse-exe.zip 因项目需要做了一个质量功能配置(Quality Function Deployment 简称Qfd)的质量屋编制工具软件,本软件是在发布一个免费 ...