jsweb常用代码
<script>
$(function (){
$.ajax({
url: 'https://test.com:8080/api/v1/users?query_not_auth=100&start=0&num=10',
dataType: 'jsonp',
headers:{
'x-user':'1111',
'Authorization':'Bearer '+'111111'
},
success:function(data){
if (data != null && data.users != null) {
for (var i = 0; i < data.users.length; i++) {
$('.search_bar_wrap').after(generateDom(data.users[i]));
}
}
}
});
$(document).on('click','.outer.primary', function (){
$.weui.confirm('确认审核通过?',{title:'头像审核'}, function (){
}, function (){
});
});
$(document).on('click','.outer.default', function (){
$.weui.confirm('确认不合格?',{title:'头像审核'}, function (){
}, function (){
});
});
$('.search_bar_wrap').searchBar({
//替换原模板的“取消”
cancelText:"取消",
//替换原模板的“搜索”
searchText:'可搜索昵称、QQ号码、学校',
//搜索栏获得焦点时
onfocus: function (value) {
console.log('focus!The value is '+value);
},
//搜索栏失去焦点时
onblur:function(value) {
console.log('blur!The value is '+value);
},
//搜索栏在输入时
oninput: function(value) {
console.log('Input!The value is '+ value);
},
//搜索栏提交时,如果没有submit方法,则沿用浏览器默认的提交方式
onsubmit:function(value){
console.log('Submit!The value is '+ value);
},
//点击取消按钮
oncancel:function(){
console.log('click cancel');
},
//点击清空按钮
onclear:function(){
console.log('click clear');
}
});
})
function generateDom(user){
var type1 = `
<div class="weui_panel weui_panel_access panel">
<div class="weui_panel_hd apply-id">$time $name <span>申请</span><span>$gender</span></div>
<div class="weui_panel_bd">
<div class="weui_media_box weui_media_text">
[站外图片上传中……(1)]
</div>
</div>
<div class="weui_dialog_ft panel-btn">
<a href="javascript:;" class="weui_btn_dialog outer primary">审核通过</a>
<a href="javascript:;" class="weui_btn_dialog outer default">不合格</a>
</div>
</div>`;
var type2 = `
<div class="weui_panel weui_panel_access panel">
<div class="weui_panel_hd apply-id">$time $name <span>申请</span><span>$gender</span></div>
<div class="weui_panel_bd">
<div class="weui_media_box weui_media_text">
[站外图片上传中……(2)]
</div>
</div>
<div class="weui_panel_hd panel-bottom">$state</div>
</div>`;
var result = '';
switch(user.jobauth){
case 0:
case 100:
result = type1.replace('$time',timestamp2date(user.updatetime)).replace('$name',user.name).replace('$gender',user.gender==1?'男':'女').replace('$pic',user.head);
break;
case 400:
case -400:
result = type2.replace('$time',timestamp2date(user.updatetime)).replace('$name',user.name).replace('$gender',user.gender==1?'男':'女').replace('$pic',user.head).replace('$state',user.jobauth==400?"已审核通过":"已拒绝");
break;
}
return result;
}
function timestamp2date(timestamp){
var date = new Date();
date.setTime(timestamp);
M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
D = date.getDate() + ' ';
h = date.getHours() + ':';
m = date.getMinutes() + ' ';
return M+D+h+m;
}
</script>
很久不撸js了,发现自己已撸,依然连代码都不会写了,好在之前的思维都在。
js操作用得最多的,无非有以下几点:
- 1、操作dom节点,包括,查找,动态添加dom
- 2、ajax发送网络请求,要知道跨域如何处理。
- 3、不能在多了,就以上两点了。
对于操作dom节点来说,其最主要的是要去定位你要找的dom节点!
然而我们已经回不到那个findElementById
的那个时代了。
就jquery来说吧,移动端zepto其实也是一样。#
对应于id
,.
对应于class
相信懂的人一看就会,但是其他的,你不经常写,未必就记得,不记得怎么办,参考这里:
http://www.w3school.com.cn/jquery/jquery_ref_selectors.asp 。
如果你很懒,那么我也不得不贴一些要点出来:
- jQuery 元素选择器 | jQuery 使用 CSS 选择器来选取 HTML 元素。
$("p") 选取 <p> 元素。
$("p.intro") 选取所有 class="intro" 的 <p> 元素。
$("p#demo") 选取所有 id="demo" 的 <p> 元素。- jQuery 属性选择器 | jQuery 使用 XPath 表达式来选择带有给定属性的元素。
$("[href]") 选取所有带有 href 属性的元素。
$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。
$("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。
$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。- 更多的选择器实例
$(this) 当前 HTML 元素
$("p") 所有 <p> 元素
$("p.intro") 所有 class="intro" 的 <p> 元素
$(".intro") 所有 class="intro" 的元素
$("#intro") id="intro" 的元素
$("ul li:first") 每个 <ul> 的第一个 <li> 元素
$("[href$='.jpg']") 所有带有以 ".jpg" 结尾的属性值的 href 属性
$("div#intro .head") id="intro" 的 <div> 元素中的所有 class="head" 的元素
$("a,li,p") 所有的,a,li,p元素。
其次想回顾下的主要有两个方面,事件,以及操作文档。
对于事件,也不想作太多的回顾,用得最多的无非就是click,但是有一点需要注意,动态添加的文本,也想有click事件怎么办?
以下两种,均不会对后续动态增加进来的元素产
on(type, [selector], function(e){ ... }) ⇒ self
on(type, [selector], [data], function(e){ ... }) ⇒ self
on({ type: handler, type2: handler2, ... }, [selector]) ⇒ self
on({ type: handler, type2: handler2, ... }, [selector], [data]) ⇒ self
var elem = $('.content')
// observe all clicks inside dom of class named content:
elem.on('click', function(e){ ... })
// observe clicks inside navigation links in .content
elem.on('click', 'nav a', function(e){ ... })
而以下两种均会对后续动态添加进来的a,节点,nav 下的 a节点其作用。
// all clicks inside links in the document
$(document).on('click', 'a', function(e){ ... })
// disable following any navigation link on the page
$(document).on('click', 'nav a', false)
最后,想回顾的自然是网络相关的操作,当然,本人也很懒,只想回顾下ajax罢了:
- type
(default: “GET”): HTTP request method (“GET”, “POST”, or other)- url
(default: current URL): URL to which the request is made- data
(default: none): data for the request; for GET requests it is appended to query string of the URL. Non-string objects will get serialized with $.param- processData
(default: true): whether to automatically serialize data
for non-GET requests to string- contentType
(default: “application/x-www-form-urlencoded”): the Content-Type of the data being posted to the server (this can also be set via headers
). Pass false
to skip setting the default value.- mimeType
(default: none): override the MIME type of the response. v1.1+- dataType
(default: none): response type to expect from the server. One of json
, jsonp
, script
, xml
,html
, or text
.- jsonp
(default: “callback”): the name of the JSONP callback query parameter- jsonpCallback
(default: “jsonp{N}”): the string (or a function that returns) name of the global JSONP callback function. Set this to enable browser caching. v1.1+- timeout
(default: 0
): request timeout in milliseconds, 0
for no timeout- headers
: object of additional HTTP headers for the Ajax request- async
(default: true): set to false
to issue a synchronous (blocking) request- global
(default: true): trigger global Ajax events on this request- context
(default: window): context to execute callbacks in- traditional
(default: false): activate traditional (shallow) serialization of data
parameters with $.param- cache
(default: true): whether the browser should be allowed to cache GET responses. Since v1.1.4, the default is false
for dataType: "script"
or jsonp
.- xhrFields
(default: none): an object containing properties to be copied over verbatim to the XMLHttpRequest instance. v1.1+- username & password
(default: none): HTTP Basic authentication credentials. v1.1+
$(document).on('ajaxBeforeSend', function(e, xhr, options){
// This gets fired for every Ajax request performed on the page.
// The xhr object and $.ajax() options are available for editing.
// Return false to cancel this request.
})
$.ajax({
type: 'GET', url: '/projects',
// data to be added to query string:
data: { name: 'Zepto.js' },
// type of data we are expecting in return:
dataType: 'json',
timeout: 300,
context: $('body'),
success: function(data){
// Supposing this JSON payload was received:
// {"project": {"id": 42, "html": "<div>..." }}
// append the HTML to context object.
this.append(data.project.html)
},
error: function(xhr, type){ alert('Ajax error!') }
})
// post a JSON payload:
$.ajax({
type: 'POST',
url: '/projects',
// post payload:
data: JSON.stringify({ name: 'Zepto.js' }),
contentType: 'application/json'
})
jsweb常用代码的更多相关文章
- GCD 常用代码
GCD 常用代码 体验代码 异步执行任务 - (void)gcdDemo1 { // 1. 全局队列 dispatch_queue_t q = dispatch_get_global_queue(0, ...
- 转--Android实用的代码片段 常用代码总结
这篇文章主要介绍了Android实用的代码片段 常用代码总结,需要的朋友可以参考下 1:查看是否有存储卡插入 复制代码 代码如下: String status=Environment.getE ...
- 刀哥多线程之03GCD 常用代码
GCD 常用代码 体验代码 异步执行任务 - (void)gcdDemo1 { // 1. 全局队列 dispatch_queue_t q = dispatch_get_global_queue(0, ...
- jquery常用代码集锦
1. 如何修改jquery默认编码(例如默认GB2312改成 UTF-8 ) 1 2 3 4 5 $.ajaxSetup({ ajaxSettings : { contentT ...
- Mysql:常用代码
C/S: Client Server B/S: Brower Server Php主要实现B/S .net IIS Jave TomCat LAMP:L Mysql:常用代码 Create table ...
- javascript常用代码大全
http://caibaojian.com/288.html 原文链接 jquery选中radio //如果之前有选中的,则把选中radio取消掉 $("#tj_cat .pro_ca ...
- Android 常用代码大集合 [转]
[Android]调用字符串资源的几种方法 字符串资源的定义 文件路径:res/values/strings.xml 字符串资源定义示例: <?xml version="1.0&q ...
- NSIS常用代码整理
原文 NSIS常用代码整理 这是一些常用的NSIS代码,少轻狂特意整理出来,方便大家随时查看使用.不定期更新哦~~~ 1 ;获取操作系统盘符 2 ReadEnvStr $R0 SYSTEMDRIVE ...
- PHP常用代码大全(新手入门必备)
PHP常用代码大全(新手入门必备),都是一些开发中常用的基础.需要的朋友可以参考下. 1.连接MYSQL数据库代码 <?php $connec=mysql_connect("loc ...
随机推荐
- 论文笔记 Beyond Part Models: Person Retrieval with Refined Part Pooling_ECCV_2018
1. 摘要 使用part-feature 能够起到更好的效果,不过这个需要我们很好地定位part的位置. 本文中作者集中考虑part内部的一致性,提出了 part-based convolutiona ...
- winform程序打包成exe文件
拿到一个实现功能的winform小程序,如何利用NSIS工具制作安装包? 1.NSIS工具下载地址 点我下载 2.启动NSIS工具,如图点击 3.选择"使用脚本向导创建新的脚本文件" ...
- Kafka设计解析(十一)Kafka无消息丢失配置
转载自 huxihx,原文链接 Kafka无消息丢失配置 目录 一.Producer端二.Consumer端 Kafka到底会不会丢数据(data loss)? 通常不会,但有些情况下的确有可能会发生 ...
- 视频直播时的QoS策略
一.如何判断当前的网络状况 可以以发送一帧视频数据的时间为依据,判断当前网络拥塞情况. 网络中出现丢包和抖动,导致接收端接收数据超时,会激发发送端数据重传,重传机制本身挤占网络带宽,导致send ...
- python为什么叫胶水语言?python为什么是系统脚本?
python为什么叫胶水语言?python为什么是系统脚本? 特点是什么? python现在最广为闻名的形容大概有这些: 他是很好的胶水语言.什么是胶水语言?反正当时的我不知道. 他是新一代的系统 ...
- ubuntu 服务器配置
一.apache.svn服务器的搭建 1.安装apache2 apt-get install apache2 2.下载安装svn服务和svn-apache连接库 sudo apt-get instal ...
- Redis高级应用——2
Redis-事务 Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证: 事务是一个单独的隔离操作,事务中的所有命令都会序列化.按顺序地执行.事务在执行的过程中,不会被其他客户端发送来的 ...
- SuperObject Delphi 的 JSON 属性乱序 - 操作类改造 - 关于属性顺序的问题
Delphi 的 ISuperObject 属性顺序为随机.但是很多时候,是需要按加入顺序进行读取.我也看了网上很多人有类似需求.也有人问过原作者,作者答复为:JSON协议规定为无序.看了我真是无语. ...
- python执行时遇到 KeyError: b'somevar' 时需要想到的
虽然这个问题很小,但我觉得很有必要单独拿出来强调一下. 这样在遇到类似错误的时候可以很快反应过来,进而节约了时间. 这里我拿 shelve 模块举例(shelve的作用大致就是把python变量存放到 ...
- mfc 类对象指针
类对象指针 一.类对象指针定义 Tdate d1; Tdate *p1=&d1; Tdate *p2=(Tdate *)malloc(sizeof(Tdate)); 二.类对象指针使用 int ...