js代码

js操作svg整体缩放

十年热恋 提交于 2019-12-07 23:56:29
首先我们先创建一个svg整体布局,代码如下: <!DOCTYPE html> < html > < head > < title > js操作svg实现整体缩放 </ title > < meta charset = "utf-8" > </ head > < body > < svg id = "svg" style = "background:#FAFAFA;" > < g id = "svgPanel" > < g id = "grid" > </ g > < circle fill = "red" r = "50" cx = "100" cy = "100" > </ circle > </ g > </ svg > < button onclick = "zoom(1.1)" > 放大 </ button > < button onclick = "zoom(0.9)" > 缩小 </ button > </ body > </ html > js代码来控制svg整体的大小并且利用svg来绘制背景网格: <script type = "text/javascript" > var svg = document.getElementById( "svg" ); var svgPanel = document.getElementById( "svgPanel" ); var

前端——js关闭页面方法

吃可爱长大的小学妹 提交于 2019-12-07 19:49:46
js关闭当前页面,当该页面不是其他页面打开的,而是直接输入url, 直接用window.close()无法关闭。 以下代码可以实现不同浏览器的关闭操作: function CloseWebPage(){ if (navigator.userAgent.indexOf("Firefox") != -1 || navigator.userAgent.indexOf("Chrome") !=-1) { window.location.href="about:blank"; window.close(); } else { window.opener = null; window.open("", "_self"); window.close(); } } function CloseWebPage(){ if (navigator.userAgent.indexOf("MSIE") > 0) { if (navigator.userAgent.indexOf("MSIE 6.0") > 0) { window.opener = null; window.close(); } else { window.open('', '_top'); window.top.close(); } } else if (navigator.userAgent.indexOf("Firefox") > 0)

jQuery和原生JS的对比

我的梦境 提交于 2019-12-07 17:13:25
原生JS的缺点: 不能添加多个入口函数(window.onload),如果添加了多个,后面的会把前面的覆盖掉 原生js的api名字太长,难以书写,不易记住 原生js有的代码冗余 原生js中的属性或者方法有些浏览器无法兼容 原生js容错率比较低,前面的代码出现问题,后面的代码执行不到 jQuery的优点: 可以写多个入口函数 jQuery的api名字容易记住 jQuery的代码简洁 jQuery帮我们解决了浏览器兼容问题 容错率比较高,前面的代码出现问题,不影响后面的代码 来源: https://www.cnblogs.com/xiexiaofei/p/12002350.html

一、初识JavaScript

元气小坏坏 提交于 2019-12-07 16:37:25
一、JS的组成 1. ECMAScript   ECMAScript 是由ECMA 国际( 原欧洲计算机制造商协会)进行标准化的一门编程语言,这种语言在万维网上应用广 泛,它往往被称为 JavaScript 或 JScript,但实际上后两者是 ECMAScript 语言的实现和扩展。 2. DOM ——文档对象模型   文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标记语言的标准编程接口。 通过 DOM 提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)。 3. BOM ——浏览器对象模型   BOM (Browser Object Model,简称BOM) 是指浏览器对象模型,它提供了独立于内容的、可以与浏览器窗口进行 互动的对象结构。通过BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。 二、JS的位置 JS 有3种书写位置,分别为行内、内嵌和外部。 1. 行内式 JS <input type="button" value="点我试试" onclick="alert('Hello World')" />  可以将单行或少量 JS 代码写在HTML标签的事件属性中(以 on 开头的属性),如:onclick  注意单双引号的使用:在HTML中我们推荐使用双引号, JS 中我们推荐使用单引号

js SyntaxError: JSON.parse: bad control character

风格不统一 提交于 2019-12-07 16:26:44
firebug报错信息: SyntaxError: JSON.parse: bad control character in string literal at line 1 column 1903 of the JSON data 做了一个web项目,从后台返回一个JSONObject对象到jsp页面。接收对象在转换过程中报错。 后台代码: DeliveryHttpInfo delivery = (DeliveryHttpInfo)map.get("deliveryHttpInfo") ; request.setAttribute("deliveryInfo", JSONObject.fromObject(delivery) jsp前台接收代码 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <% Object deliveryInfo = request.getAttribute("deliveryInfo"); %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>城市名定位</title> </head> <body> 123456 </body> <

JS中的匿名函数和闭包

泄露秘密 提交于 2019-12-07 15:54:50
定义函数的方式有两种,一是 函数声明 ,二是通过 函数表达式 。 函数声明的方式如下所示: function functionName(arg0,arg1,arg2){ //函数体 } 函数表达式: var functionName=function(arg0,arg1,arg2){ } 匿名函数 又称拉姆达函数,其定义是由函数表达式模式创建的函数,即创建一个函数并将它复制给变量。其特点是function关键字后面没有标识符。匿名函数的name属性是空字符串。 闭包 是指有权访问另一个函数作用域的变量的函数。创建闭包常见的方式就是在一个函数内部创建另一个函数。 下面的函数定义即为一个闭包: function createFunction(){ var result=new Array(); for(var i=0;i<10;i++){ result[i]=function(){ return i; }; } return result; } 由于闭包会携带包含它的函数的作用域,因此会比其他函数占用更多的内存。过度使用闭包可能会导致内存占用过多。 闭包与变量 由于作用域链的存在,闭包只能取得包含函数中任何变量的最后一个值。 如下代码所示为解决实际问题中的闭包与变量的问题: for(var i=0;i 来源: CSDN 作者: yihuoZhou 链接: https://blog

关于js中函数的闭包 深入了解

自闭症网瘾萝莉.ら 提交于 2019-12-07 15:51:19
闭包 就是能够读取其他函数内部变量的函数。 即函数定义和函数表达式位于另一个函数的函数体内。而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量、参数和声明的其他内部函数。当其中一个这样的 内部函数在包含它们的外部函数之外被调用时,就会形成闭包 。也就是说,内部函数会在外部函数返回后被执行。而当这个内部函数执行时,它仍然必需访问其外部函数的局部变量、参数以及其他内部函数。这些局部变量、参数和函数声明(最初时)的值是外部函数返回时的值,但也会受到内部函数的影响。----- 个人理解就是:闭包是能够读取其他函数内部变量的函数,即在外面可以调用函数中的函数的变量,其实他就是 将函数内外部连接起来的桥梁 。 如下面例子4 : 这段代码有以下两个特点: 1 、 函数b 嵌套在函数a内部;2、函数a返回函数b; 引用关系如下图: 这样在执行完var c = a() 后,变量c实际上是指向了函数b,b中用到了变量i,再执行c()后就会弹出一个窗口显示i的值(第一次为1)。这段代码其实就创建了一个闭包,为什么?因为函数a外的变量c引用了函数a内的函数b,就是说: 当函数a 的内部函数b被函数a外的一个变量引用的时候,就创建了一个我们通常所谓的“闭包”。 当函数b执行的时候亦会像以上步骤一样。因此,执行时b的作用域链包含了3个对象:b的活动对象、a的活动对象和window对象,如下图所示

前端学习笔记-JavaScript

强颜欢笑 提交于 2019-12-07 15:17:32
js引入方式:   1、嵌入js的方式:直接在页内的script标签内书写js功能代码。     <script type="text/javascript">alert('hello')</script>   2、外联式引入js:以相对路径的方式引入本地js文件,实现H5、CSS、JS分离。     <script type="text/javascript" src="hello.js"></script> js基本语法:   定义变量:使用var关键字,区分大小写。 var a = 123; 使用js操作属性: 1 <script type="text/javascript"> 2 window.onload = function(){ 3 //通过获取一个标签的id来联系标签 4 var oDiv = document.getElementById('div1');       var oInput01 = document.getElementById('input01');       var aLi = documentsgetElementsByTagName('li');//获取一组标签,使用时可通过下标确定具体使用哪一个 5 //对目标标签进行style属性重写 6 oDiv.style.color = 'red';       aLi[2].style

SpringMVC使用@ResponseBody时返回json的日期格式

安稳与你 提交于 2019-12-07 15:09:54
一、SpringMVC使用@ResponseBody时返回json的日期格式 前提了解: @ResponseBody 返回json字符串的核心类是org.springframework.http.converter.json.MappingJacksonHttpMessageConverter,它使用了Jackson 这个开源的第三方类库。主要是以下两个jar包:jackson-core-asl-1.6.4.jar;jackson-mapper-asl-1.6.4.jar。 出现问题: 使用@ResponseBody时返回json字符串的日期格式。Date类型属性默认返回一个Long型的时间戳,怎样能够返回自定义的日期格式? 解决方案:目前有两种方式实现, 1、局部修改(网上较多,但不推荐); 继承Jackson的抽象类:JsonSerializer<T>,然后在javabean的属性getter()上添加注解@JsonSerialize即可实现。 代码如下: Java代码 import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import org.codehaus.jackson.JsonGenerator; import org.codehaus.jackson

JS定时器做物体运动

泄露秘密 提交于 2019-12-07 15:09:33
JS定时器是函数 setInterval(函数体/函数名 , 时间) 清楚定时器 clearInterval(函数) 时间单位(毫秒) 1000毫秒 = 1秒   首先我们要知道用JS定时器能干什么?定时器的原理是什么?   我的理解为,定时器是能让一个物体根据规定的时间做规定的移动,而物体运动是怎样的效果呢?你可以理解为一个人走路,要走到某个位置,要走到这个位置肯定是一步步移动才能达到,而不是瞬间就到达的,所以定时器的作用更像是让物体像人一样走到相应的位置 比如:   规定一个横形状方块,其中包裹一个小方块,然后将大方块定位到屏幕之外,再通过某个事件触发使大方块出现: before: now:   可以看到红色部分是负值,所以我们要动过物体移动,来使红色部分一点点移动出来, 获取到div1 设置定时器 给其鼠标放置其上和离开时时的事件 封装move函数 一 一讲解, 在启动定时器之前,我们要先清除一次定时器,为的是放置多重触发时使速度越来越快 然后设置移动速度 speed  因为你事件是置上和离开事件,传递的参数为0和-600;所以我们要判断 当距离(target)每次减去offsetLeft大于0时,就向上取整,小于0时候向下取整, 然后设置什么时候关闭定时器的条件 在这里是,当我们鼠标置上时或者离开时候达到我们给定的target参数我们就清除定时器