python写前端和js_Python之路【第十二篇】前端之jsdomejQuery
JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。
1、存在方式
functionfunc() {
alert("Hello Shuaige")
}
2、javascript代码块位置
放在
标签内的代码底部,为什么不能放在上面呢?为什么css的就可以放在上面呢?
注:css代码首先要记住html代码是从上往下解释的,如果css代码放在下面,在上面的代码使用css样式,如果css代码块放在下面就没有办法显示样式了
另不同的浏览器处理请求也不同:正常来说当有一个请求过来时候会把js&css一起发送过去,咱们按照最low的方式理解的话可以这么理解:如果js文件或者js耗时比较久的话,下面的html代码就无法执行了。
3、变量和函数的声明
变量:
functionm1() {
alert("shuaige")var name = 'tianshuai'; //var 变量名 ,变量名前面加var为局部变量
age = '18';//注这里需要注意,建议使用的时候一般不要使用全局变量!否则如果代码量比较大的
//时候容易出现调用混乱的问题
}
m1();
函数
//普通函数
functionfunc() {
alert("Hello Shuaige")
}//定义一个可传参数的函数
functionfunc(arg) {
alert(arg)
}
func('Superman')//自执行函数,顾名思义,定义好之后可以自动执行
(function f3(arg) {alert(arg)})("Shuaige is good man");
//匿名函数,用处不是很大了解就行
var a = function() {
alert('meinv');
};
a();
js 的展示方法有两种:
通过网页来展示
functionf1() {
alert("hello shuai ge")
}
f1()
显示效果如下:
通过console来展示
functionf1() {
console.log("Hello shuaige ")
}
f1()
显示效果如下:
打开google chrome F12点击"Console",刷新页面!
4、字符串常用方法及属性
调试的地方可以在google chrome 上进行测试,F12点击"Console"
obj.trim() 去除空格
var a = "Luotianshuai"undefined
a.trimLeft()#去除左边的空格
"Luotianshuai"a.trimRight()#去除右边的空格
"Luotianshuai"a.trim()//去除两边的空格"Luotianshuai"a"Luotianshuai" #这里可以发现我执行了上面的去除空格的命令之后,实际的值是没有改变的
b=a.trim()"Luotianshuai" #但是我们可以通过赋值来改变他
b"Luotianshuai"
obj.charAt(index) 根据索引获取字符串里的字符
b"Luotianshuai"b.charAt(0)"L"b.charAt(1)"u"b.charAt(2)"o"
obj.substring(start,end) 获取字符的子序列,类似于切片
b"Luotianshuai"b.substring(0,3)"Luo"
obj.indexOf(char) 去字符串找指定的字符的索引值是多少
b"Luotianshuai"b.indexOf("t")3
obj.length 获取字符串的长度
b"Luotianshuai"b.length12
5、数组
声明一个数组和python中的列表类似
a = [11,22,33,44] #声明一个数组
[11, 22, 33, 44]
插入
a = [11,22,33,44] #声明一个数组
[11, 22, 33, 44]
a.push(55) #在数组最后增加一个元素
5 #这里是数组的长度
a
[11, 22, 33, 44, 55]
a.unshift(00) #在数组最前面增加一个元素
6 #长度
a
[0,11, 22, 33, 44, 55]
a.splice(3,0,'insert') #在指定的索引增加一个元素,括号内(3为索引值,0为固定值,要插入的内容)
[]
a
[0,11, 22, "insert", 33, 44, 55]
a.unshift(100)8
移除
a
[100, 0, 11, 22, "insert", 33, 44, 55]
a.pop()#从尾部获取
55a.shift()#从开头获取
100a
[0,11, 22, "insert", 33, 44]
a.splice(3,1) #从指定位置获取,括号内参数为(元素的索引,后面为索引后的元素个数,包含本身)
["insert"]
a
[0,11, 22, 33, 44]
切片
a
[0,11, 22, 33, 44]
a.slice(1,3)
[11, 22]
a
[0,11, 22, 33, 44]
合并
a = [11,22]
[11, 22]
b= [44,55]
[44, 55]
a.concat(b)
[11, 22, 44, 55]
a
[11, 22]
b.concat(a)
[44, 55, 11, 22]
反转
a
[11, 22]
a.reverse()
[22, 11]
a
[22, 11]
字符串格式化
a
[22, 11]
a.join('_')"22_11"a
[22, 11]
数组长度
a
[22, 11]
a.length2
6、字典
字典是数组的一种特殊形式
dict1 = {'k1':123,'k2':234} #定义一个字典
Object {k1: 123, k2: 234}
dict1['k1']123
7、循环
js中的循环有两种方式
#第一种
for (var i=0;i<10;i++) {console.log(i)}#输出结果,看本代码下第一图
#第二种
for (var item ina) {console.log(a[item])}#输出结果,看本代码下第二图
图二:
8、异常处理
和python中的异常处理类似,代码如下:
try{var tiancai =isme
}catch(e) {
console.log(e)
}finally{
console.log("shuaige is so smart;")
}
显示效果如下:
DOM编程
文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口。
DOM编程:可以操作html所有的标签,进行找、操作!他也是javascript的一部分
1、选择器:
document.getElementById('id') 查找指定的id,然后我们可以进行操作
123
var i = document.getElementById('id_1'); //查找指定的id
i.innerText = '456'; //innerText修改指定的字符串
显示效果,当我们打开IE的时候123就会被修改为456
下面操作方式也类似:
document.getElementsByName('name')
123
var i = document.getElementsByName('name_1'); //查找指定的name,这里和ID不一样name可以有多个
for (var item ini) {
i[item].innerText= '456'; //innerText修改指定的字符串
};
document.getElementsByTagName('tagname')
123
234
var i = document.getElementsByTagName('div'); //查找指定的标签类型,这里同样和ID不一样标签比如
for (var item ini) {
i[item].innerText= '456'; //innerText修改指定的字符串
};
上面的代码试用jquery会非常方便就不需要重造轮子
2、注册 事件
首先了解下面的意思:
事件:比如有一个“按钮”,当你点击的时候发生什么,双击的时候发生什么,这个就叫做事件!
注册:首先这个按钮,当你点击的时候发生的动作,上面的事件要使他出现我们想要的效果,首先得把事件和函数进行绑定,然后把他们注册到指定标签上。
常用事件:
onclick
onblur
onfocus
..................
举例代码如下:
写一个input的标签,首先把事件和函数进行绑定,当你一点这个按钮的时候就会自动执行,绑定的函数:
shuaige_js_file
}
234
functionedit() {vari=document.getElementById('id_1');
i.className= 'color_red';
}
那么恢复按钮呢?只要在新增一个即可
shuaige_js_file
}
234
python写前端和js_Python之路【第十二篇】前端之jsdomejQuery相关推荐
- ES6之路第十二篇:Promise对象
Promise的含义 Promise 是异步编程的一种解决方案,比传统的解决方案--回调函数和事件--更合理和更强大.它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Prom ...
- 【手写 Vue2.x 源码】第二十二篇 - dep 和 watcher 关联
一,前言 上篇,主要介绍了 Vue 依赖收集的过程分析: 介绍了 Vue 的响应式特性 介绍了 Vue 的依赖收集过程 介绍了 dep 和 watcher 以及观察者模式: 本篇,Vue 依赖收集的实 ...
- Python编写微信打飞机小游戏(十二)
如果觉得这篇文章对您有所启发,欢迎关注我的公众号,我会尽可能积极和大家交流,谢谢. Python编写微信打飞机小游戏(一) Python编写微信打飞机小游戏(二) Python编写微信打飞机小游戏(三 ...
- 【零基础入门前端系列】—背景属性(十二)
[零基础入门前端系列]-背景属性(十二) 一.背景属性 CSS背景属性主要有以下几个: CSS3中可以通过background-image属性添加背景图片. 不同的背景图像和图像用逗号隔开,所有的图片 ...
- Python之路(第十六篇)xml模块、datetime模块
一.xml模块 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单, xml比较早,早期许多软件都是用xml,至今很多传统公司如金融行业的很多系统的接口还主要 ...
- 用python写一个有AI的斗地主游戏(二)——简述后端代码和思路
源码请看我的Github页面. 这是我一个课程的学术项目,请不要抄袭,引用时请注明出处. 本专栏系列旨在帮助小白从零开始开发一个项目,同时分享自己写代码时的感想. 请大佬们为我的拙见留情,有不规范之处 ...
- Python之路【第十二篇】:函数
定义函数 def 函数名(形式参数): 函数体 return 返回值 a = 1 def f(b):print(b)return None 如上所示,就是简单的定义了一个函数 函数的返回值 retur ...
- Python之路【第二十二篇】:Django之Model操作
Django之Model操作 一.字段 AutoField(Field)- int自增列,必须填入参数 primary_key=TrueBigAutoField(AutoField)- bigint自 ...
- Python高手之路【十二】面向对象设计模式
单例模式 单例,顾名思义单个实例. class Person:__instance = Nonedef __init__(self):pass@staticmethoddef getInstance( ...
最新文章
- 刘伟:什么是智能人机交互?
- 北航计算机科学与技术专业培养计划,北京航空航天大学2020年计算机科学与技术专业培养计划...
- Vue.js-Day07【项目实战(附带 完整项目源码)-day02:学习能力、字体图标(使用步骤)、在vue.js中使用jQuery】
- 没有人会觉得正则表达式难写
- 学习NSURLSession(1)
- 机器学习算法的调试 —— 梯度检验(Gradient Checking)
- idle运行python_python中的idle是如何运行的
- 无法保存关闭文件 苹果电脑 显示正在保存_??Linux文件编辑 - 给你骨质唱疏松
- R语言介绍(R包与帮助文档)
- 在韩国5G商用神话中,我们不能学到什么?
- HTML中表格写法,在HTML代码里面表格的写法以及表格的特性
- 学习Mac开发第四弹 通过NSImageView加载图片
- html5图片邀请函,html5,邀请函.doc
- 浅谈微信小程序对于创业者,意味着什么?
- 基于kinect的人体动作识别系统(算法和代码都放出)
- 互联网大厂的年终奖(华为分红400亿,腾讯每人发股票 )
- 用多媒体计算机画图教学设计,Windows98中画图程序的使用教学设计.doc
- 从业了八年程序员觉得已经是非常的枯燥了
- 关于正态总体的样本均值与样本方差的重要结论
- 【淘客基地各项目拉新活动海报已开启】公告
热门文章
- php根据分类生成网址,PHP实现无限极分类生成分类树的方法
- java单终端登陆_配置终端服务单一登录
- java 线程变量put_Java线程(篇外篇):线程本地变量ThreadLocal
- mediarecorder添加时间戳_Python脚本实现数据处理(官方实例)和Hive自带时间函数...
- NFS服务器原理、搭建、配置
- 对象设计——责任、角色和协作思维导图笔记
- C++学习之路 | PTA乙级—— 1058 选择题 (20 分)(精简)
- java程序员面试需要注意什么_Java程序员面试时要注意的一些问题
- mysql数据库进行更新、插入显示中文乱码问题
- ef生成mysql字段注释_EFcore+MySql 数据迁移的时候,怎么给表结构加注释?