showBtn

:class="{getInput:showBtn}"
v-if="showBtn"

showBtn: true,

this.showBtn = false;

this.showBtn == true

JSON.parse('{"p": 5}', function(k, v) {
document.write(k);document.write(v);
});

js button 图片的动态替换
<Button size="small" type="ghost" @click="save" >
<span @mouseleave="leavesx" @mouseenter="entersx">
<img name="test" src="../../../../../../../static/img/anchor.png">新增
</span>
</Button>
leavesx(it) {
console.log(it);
console.log(document.getElementsByName("test")[0]);
document.getElementsByName("test")[0].setAttribute("src", "../../../../../../../static/img/jiantou.png");
},
entersx(it) {
console.log(it);
// debugger
document.getElementsByName("test")[0].style.color = "blue";
},
font-size: 16px;
vertical-align: top;
margin-right: 4px;

//prompt 弹框 截取 substr 后十位
var str = prompt("please input a string ", "1234567890");
my_label: {
if (str && str.length < 10) {
console.log(my_label);
break my_label; //!!!! break 后跟label my_label
}
str = str.substr(str.length - 10);
console.log(str);
}

屏蔽web自带鼠标右键
document.oncontextmenu = function () {
return false;
}

DOM方法
createElement()/createTextNode()/appendChild()/inertBefore

innerHTML() 全部内容的替换

createElement() 创建一个新的元素,创建元素节点
var para = document.createElement("p");
变量para现在包含着一个指向我们刚创建出来的那个p元素的引用指针。
p 已经有了一个nodeType 和 nodeName 值。
window.onload = function () {
var para = document.createElement("p");
var info = "nodeName:";
info += para.nodeName;
info += "nodeType:";
info += para.nodeType;
alert(info);

//创建的p插入已有的div
var div1 = document.getElementById("divid");
div1.appendChild(para);
}
createTextNode 创建文本节点
一个div里拼入
var demos = document.getElementById("demo");
var para = document.createElement("p");
var txt = document.createTextNode("nihao");
demos.appendChild(para);
para.appendChild(txt);

insertBefore()方法的优势在于可以对文档中任何一个元素的任何一个属性修改。把一个新元素插入到现有元素的前面
1>想插入的新元素(newElement)
2>想把这个新元素插入到哪个现有元素(targerElement)的前面
3>这两个元素的共同父元素(parentElement)
parentElement.insertBefore(newElement,targerElement);
(parentElement 不必清楚是谁,同于 target.parentNode )

insertAfter(newElement,targerElement)//before 相反

多个事件添加到window.onload 用addLoadEvent().

移除元素
var parent=document.getElementById("div1");
var child=document.getElementById("p1");
parent.removeChild(child);

页面加载完毕时执行函数
function addLoadEvent(func){
var oldonload = window.onload;
if(typeof window.onload != 'function'){
window.onload = func;
}else{
window.onload = function(){
oldonload();
func();
}
}
}
addLoadEvent(firstFunction);//只需如此添加就能在页面加载完之后执行
addLoadEvent(secondFunction);

// --
window.onload = firstFunction();
window.onload = secondFunction();//两个onload只有最后一个会执行
so : window.onload = funtion(
firstFunction();
secondFunction();
)

多个链接 点击某一个
javaScript 与 HTML代码分离时,加上 window.onload = fun;
functon fun(){//嵌套以下代码}
if(!document.getElementByTagName){
return false;} //向后兼容性(不支持javaScript时不执行之后的代码)
var links = document.getElementByTagName("a");
for(var i - 0;i<links.length;i++){
if(link[i].className == "popup"){
link[i].onclick = function(){
popUp(this.getAttribute("href"));
return false;
}
}
}

预留退路
不规范示例:
<a href="#" onClick="popUp("http://www.baidu.com/");return false;">eg</a>
规范示例:
(用户禁用javaScript)
eg:
<a href="http://www.baidu.com/" onClick="popUp(this.getAttribute('href'));return false;">eg</a>
or<!-- onClick="popUp(this.href); -->

BOM
window.open(url,"name","width=320;height=480")//打开文档url地址,新窗口名称,新窗口的各种属性

JavaScript 停留在面向过程的层次上(脚本语言)

node.childNodes[0] node.firstChild //两者完全等价

DOM
Document Object Model
setAttribute()方法的优势在于可以对文档中任何一个元素的任何一个属性修改。

js数组 取元素和索引
arrs.forEach(item,index,arr) {
arr[index] = ....;
}

getElementByTagName //获取的是一个数组
//查询对象属性
object.getAttribute(attributeName);

JS用例的更多相关文章

  1. 详解回调函数——以JS为例解读异步、回调和EventLoop

      回调,是非常基本的概念,尤其在现今NodeJS诞生与蓬勃发展中变得更加被人们重视.很多朋友学NodeJS,学很久一直摸不着门道,觉得最后在用Express写Web程序,有这样的感觉只能说明没有学懂 ...

  2. Highcharts error #16: www.highcharts.com/errors/16 js 单例

    一.问题项目某一个页面用的highcharts用来显示一张图表,第一次刷新正常,第二次就出来这个错.1二.解决问题过程在网上找了很多同样是这个错误的解决方案. 第一:加载了highstock.js然后 ...

  3. C# JS 单例

    单例模式的三个特点: 1,该类只有一个实例 2,该类自行创建该实例(在该类内部创建自身的实例对象) 3,向整个系统公开这个实例接口 模式1: class Singleton { //私有,静态的类自身 ...

  4. JS单例设计模式

     单例,指的是只有一个实例的对象.    在应用单例模式时,生成单例的类必须保证只有一个实例的存在,很多时候整个系统只需要拥有一个全局对象,才有利于协调系统整体的行为.比如在整个系统的配置文件中,配置 ...

  5. 前端框架本质之探究——以Vue.js为例

    问:我们在使用Vue时,实际上干了什么?   答:实际上只干了一件事——new了一个Vue对象.后面的事,都交由这个对象自动去做.就好像按了下开关,机器跑起来了,剩下的事就不用我们再操心了.   各位 ...

  6. 外部引入的js 判断js脚本加载是否完成,完成后执行 相应的动作(以引入百度地图js为例)

    可以使用JQuery的 $.getScript(url,function(){});方法 $.getScript("http://api.map.baidu.com/getscript?v= ...

  7. EazyUI主页框架搭建纯JS样例

    採用Jfinal+EazyUI  执行起来就好能够了 眼下还未增加后台代码  纯JS代码搭建的一个二级菜单+主页 客户换肤, 给使用EazyUI的新人一个高速可用的JS 搭建界面 也给自己保存下 界面 ...

  8. 单核、多线程与时间片,以Node.js为例

    去年写了篇文章<线程与进程的理解>,当时认为线程和CPU的单核多核无关,操作系统可以有很多个线程.但今天看<深入浅出Node.js>一书时,多次提到单线程无法利用多核CPU一类 ...

  9. JS单例对象与构造函数对象的区别

    JavaScript对象有几种: 内置对象如Global,Math对象等等. 本地对象如Object.Function.Array.String.Boolean.Number.Date.RegExp. ...

随机推荐

  1. HDU - 6198 number number number(规律+矩阵快速幂)

    题意:已知F0 = 0,F1 = 1,Fn = Fn - 1 + Fn - 2(n >= 2), 且若n=Fa1+Fa2+...+Fak where 0≤a1≤a2≤⋯≤a,n为正数,则n为mj ...

  2. HDU 2586 LCA-Tarjan

    还是LCA-tarjan算法,跟POJ 1330做法基本类似,只是这个题目要求输出两个点的最短距离,其实利用LCA的性质,就是 两个点分别到最近公共祖先的距离之和 一开始本来想用并查集把路径长度给找出 ...

  3. ISO处理jq事件

    jq事件在IOS上,如果标签本身不具备某些功能,而我们通过document或者body绑定上去的话,有些事件是不起作用的,同时在IOS上jq事件也存在延迟. 事件不起作用 这里点击事件为例,在IOS中 ...

  4. 基于Ambari Server部署HDP集群实战案例

    基于Ambari Server部署HDP集群实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.部署Ambari Server端 博主推荐阅读: https://www.c ...

  5. 2016蓝桥杯省赛C/C++A组第二题 跳蚱蜢

    题意:有9只盘子,排成1个圆圈.  其中8只盘子内装着8只蚱蜢,有一个是空盘. 我们把这些蚱蜢顺时针编号为 1~8 每只蚱蜢都可以跳到相邻的空盘中,也可以再用点力,越过一个相邻的蚱蜢跳到空盘中.  请 ...

  6. 量化投资_Multicharts数组操作函数_append()追加函数(自定义)

    1. Multicharts中关于数组的操作比较麻烦,而且当中所谓的动态数组的定义并不是像其他语言那种的概念.因此要对数组进行元素“”追加“”的话,需要重新更改数组的索引,然后再最后一个位置添加val ...

  7. javascript面向对象编程的3种常见封装形式解析

    javascript如何才能脱离函数式编程,拥抱面向对象编程呢,常见的有3种形式,其它形式可以说都是这3种的变种.   1.直接定义对象直接量的形式   var Util={     getType: ...

  8. 用UICollectionView实现上下轮播的案例

    // //  RecommendNewsCell.swift //  XMLYFM // //  Created by Domo on 2018/8/2. //  Copyright © 2018年 ...

  9. id就是方法名,如何调用;批量input怎么获取他们的key值作为参数

    1.很多Dom的时候,一个个写会比较麻烦,我用ID记载他的方法名: 2.很多input,在数据交互的时候一个个获取会比较繁琐,给一个方法,批量获取. <div id="searchSt ...

  10. 项目进度02-Day3

    ①今天做了什么? 数据库数据的重置.之前的用户类字段的补充.简单的平台信息查询 ②明天要做什么?   分类浏览和综合查询功能. ③遇到了什么问题? 出现问题:Parameter index out o ...