1.js 中可以直接使用输出java 变量

<script>

var path = '<%=basePath%>';

2.js重新注册事件后,如何让事件不自动执行?

mzTxt.onclick =function(){hiddeBox();} 或者: mzTxt.onclick =hiddeBox;

不能或者: mzTxt.onclick =hiddeBox();

3.javascript循环添加事件,总是获取最后一个值

function delegate(fn,params,obj){
return function(){
fn.call(obj||window,params);
}
}

  var pFunc = function(i){alert(i)};
alink.onclick = delegate(pFunc,i,alink);

ref:http://blog.csdn.net/xiaohai0504/article/details/7735971

3.1看下js的闭包和作用域概念??????????变量提升 + 闭包  造成的  你自己摸索下

这个是js的闭包事件问题,也就是说你看着循环绑定的事件,其实你可能只有最后一个控件才有事件绑定,其他的都没用。你要对绑定做闭包函数的控制才行。

首先你的错误是由于闭包造成的,虽然修改后可以避免错误,但我强烈建议你使用事件委托完成事件绑定。代码可以修改如下:

function test(){ 
   var doc=document.getElementsByTagName('body')[0]; 
   doc.onclick=function(e){ 
      e=e || window.event; 
      var tagChild=e.srcElement||e.target; 
      if(tagChild.nodeType==1 && tagChild.tagName.toLowerCase()=="p"){ 
alert(tagChild.id); 
      } 
      tagChild=null; 
   } 
}

优点: 
1.页面监听事件的标签元素减少,有效提高性能问题; 
2.减少使用for循环绑定事件,同样提高了性能; 
性能提高了,你的代码质量就会得到认可。

http://blog.csdn.net/yinxiangzhongqing/article/details/54018527

1、使用闭包

2、引入jQuery,使用其中的on或delegate进行事件绑定(它们都有事件代理的特性)

4.用js实现trim()的解决办法

去除字符串左右两端的空格,在vbscript里面可以轻松地使用 trim、ltrim 或 rtrim,但在js中却没有这3个内置方法,需要手工编写。下面的实现方法是用到了正则表达式,效率不错,并把这三个方法加入String对象的内置方法中去。

写成类的方法格式如下:(str.trim();)

  <script language="javascript">
   String.prototype.trim=function(){
      return this.replace(/(^\s*)|(\s*$)/g, "");
   }
   String.prototype.ltrim=function(){
      return this.replace(/(^\s*)/g,"");
   }
   String.prototype.rtrim=function(){
      return this.replace(/(\s*$)/g,"");
   }
  </script>

写成函数可以这样:(trim(str))

  <script type="text/javascript">
   function trim(str){ //删除左右两端的空格
       return str.replace(/(^\s*)|(\s*$)/g, "");
   }
   function ltrim(str){ //删除左边的空格
       return str.replace(/(^\s*)/g,"");
   }
   function rtrim(str){ //删除右边的空格
       return str.replace(/(\s*$)/g,"");
   }
  </script>

5.匿名函数作为函数参数,为什么可以自动执行呢?

<!DOCTYPE html>
<html lang="en">
<head>
</head> <body>
<script>
function test( a, b ){
a+=1;
b(a);
} test(3, function(result){
console.log(result);
}); </script>
</body>
</html>

  

难道匿名函数自执行了?

错!!!匿名函数!=自执行匿名函数

真相只有1个:匿名函数作为参数,在调用(将匿名函数作为参数的)函数里被调用执行了。

function test( a, b ){
a+=1;
// b是对象,函数名也是对象,所以b可以指代一个函数
// 类似c++中的函数名一样
// a被复制给了b(result)
// js好灵活
b(a);
}

  6.动态拼接a的href 的js事件

function callDialog(title,content,cancelFn,okFn){
var $iosDialog1 = $('#iosDialog1');
//dialogTitle
$('#dialogTitle').text(title);
$('#dialogContent').text(content);
if(cancelFn!=null){
$('#dialogCancel').attr('href',"javascript:"+cancelFn+";");
}else{
$('#dialogCancel').attr('href',"javascript:void(0);");
}
if(okFn!=null){//href="javascript:void(0);"
$('#dialogOk').attr('href',"javascript:"+okFn+";");
}else{
$('#dialogOk').attr('href',"javascript:void(0);");
}
$iosDialog1.fadeIn(200);
}

callDialog("title","content","d()","dsdsdf()");  

7.JavaScript中以一个方法作为参数的写法

一:以方法作为参数

这下来说直接以一个方法来作为参数的写法,直接上代码:

-----------这样调用的方法-------------
go(function(){
alert("success");
});

那么,这样直接以一个function作为参数,那么go方法要如接收呢?

-------------以这样的形式接收并调用,这里显示两种方法调用-----------------
function go(fn){
alert("执行go方法");
   //下面两种方式都可以
fn();
fn.call(this);
}

二:以方法名作为参数

如果参数里面是一个方法的名称,在我拿到这个方法名称的时候,我要如何去调用这个方法呢?

-------------------调用的方式是这样的---------------------
go("hello");//hello是一个方法名称

接收并执行的方式是这样的

-----------------接收并执行------------------
function go(fn){
alert("执行hello方法")
//这是调用方法
window[fn].call(this);
}

我们可以拿到window[方法名称].call(this);

里面的this,代表着一个对象,如果需要对象来执行这个方法的时候,就需要写,否则的话,参数可以不写

8.

JAVA如何获取ajax.post请求所传的参数

急求,ajax传到后台中的参数GET请求方式可以获得传递的参数,但是post请求方式就无法获得,求高人指点~
@POST
@Path("/AddOrderlist")
@Produces(MediaType.APPLICATION_JSON)
public boolean AddOrderList() throws Exception{
String userid=req.getParameter("userid");
String menuid=req.getParameter("menuid");
}

  试过用以下代码

var url="weixin-login!checkValid.action";
var usd=trim($("#loginName").val());
var pass=trim($("#password").val());
$.ajax({
url: url,
type: 'POST',
async:false,
data:{loginName:usd,password:pass},
contentType: "application/json",
dataType: 'text',//这里要用jsonp的方式不然会报错
success: function(data) {
if(""==data||"false"==data){
alert("return null...error.");
return;
}
alert(data);
},
error:function(XmlHttpRequest,errStr,ex){
alert(errStr);
return;
}
});

  接收时用@FormParam

	@POST
@Path("/upload")
@Produces("text/plain")
public String CcproblemBook(@Context
HttpServletRequest req, @FormParam("json")
String json) {
try { return Problem_phoneService.saveCcproblemFromPhone(json); } catch (Exception e) {
e.printStackTrace();
return "false";
}
}

参数要这么传播

$.post(url,{参数......},function(data){

);

9.jquery判断checked的三种方法:
.attr('checked):   //看版本1.6+返回:”checked”或”undefined” ;1.5-返回:true或false
.prop('checked'): //16+:true/false
.is(':checked'):    //所有版本:true/false//别忘记冒号哦
jquery赋值checked的几种写法:
所有的jquery版本都可以这样赋值:
// $("#cb1").attr("checked","checked");
// $("#cb1").attr("checked",true);
jquery1.6+:prop的4种赋值:
// $("#cb1″).prop("checked",true);//很简单就不说了哦
// $("#cb1″).prop({checked:true}); //map键值对
// $("#cb1″).prop("checked",function(){
return true;//函数返回true或false
});
//记得还有这种哦:$("#cb1″).prop("checked","checked");

  

js 使用中一些需要提醒的点的更多相关文章

  1. JS Message 网页消息提醒

    JS message是一个非常小的(用gzip压缩之后才3kb)JavaScript library 用于轻松在网页上展示通知提醒.除了通知,它还支持创建带风格的对话框和确认对话框.不需要任何JS框架 ...

  2. 【js】AddFavorite/SetHome提醒用户自行操作加入收藏/设置主页

    除了老版本的ie, 就已经没有浏览器能支持js添加收藏夹和设置首页, 浏览器没有开放这个权限了,external.addFavorite这个给禁了. 不过AddFavorite可以起到提醒用户自行操作 ...

  3. 移动开发js库Zepto.js使用中的一些注意点

    来自http://chaoskeh.com/blog/some-experience-of-using-zepto.html的参考. 前段时间完成了公司一个产品的 HTML5 触屏版,开发中使用了 Z ...

  4. 热力图heatmap.js使用中的思路解析

    官网: https://www.patrick-wied.at/static/heatmapjs/ 需求:使用heatmap.js制作热力图,反映人群分布情况 问题:热力图需要的数据:坐标 + 人数 ...

  5. JS使用中碰到的一些问题

    settimeout: 1.setTimeout(function () {//这个则会在1秒后进行弹出1 alert(1); }, 1000); 2.setTimeout(alert(1), 100 ...

  6. JS关闭页面弹窗提醒

    <html> <head><title>JS测试</title> <script type="text/javascript" ...

  7. jQuery全屏滚动插件fullPage.js使用中遇到的问题(滑动轮播效果无效)

    1.fullPage.js是什么? fullPage.js 是一个基于 jQuery ,用来制作全屏网站的插件. 2.兼容性: - jquery兼容:兼容 jQuery 1.7+ - 浏览器兼容: I ...

  8. video.js 使用中抛出异常:DOMException: "'#1098942864706113536' is not a valid selector"

    原因:video.js 在获取页面元素时使用的是querySelector方法,由于querySelector是按css规范来实现的,所以它传入的字符串中第一个字符不能是数字. 解决:元素Id在赋值时 ...

  9. js使用中的小问题----textarea是否有value属性

    使用jquery的选择器时想给textarea设置一个默认值时,采取了下面的方法: 不过失败了,但是看教程上确实成功的,那么肯定是有问题的. 经过上网查找以及自己验证发现: 1.textarea标签确 ...

随机推荐

  1. sqlserver 2008 创建数据库的时候不是空库,里面总有数据的解决办法

    SqlServer2008 里面有个系统数据库 Model 数据库,在创建新数据库的时候,会以它为模板创建,所以如果发现你的Model数据库比较大,说明里面有很多模板数据.此时如果需要去创建没有数据的 ...

  2. 测试CPU核心个数

    //测试CPU核心个数 #if !defined (_WIN32) && !defined (_WIN64) #define LINUX #include <unistd.h&g ...

  3. Hive- 大数据仓库Hive

    什么是 Hive? Hive 是由 FaceBook 开源用于解决少量数据结构化日志的数据统计.Hive是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射成一张表,并提供类SQL查询 ...

  4. CSS3特殊图形制作

    CSS3特殊图形制作 现在IE8+的浏览器都支持CSS3+HTML5了,IE8及以下的浏览器的浏览器也快告一段落了,大前端的时代来了.废话不多说,现在开始用CSS3画图 1.心型 //HTML < ...

  5. Codeforces 429B Working out:dp【枚举交点】

    题目链接:http://codeforces.com/problemset/problem/429/B 题意: 给你一个n*m的网格,每个格子上有一个数字a[i][j]. 一个人从左上角走到右下角,一 ...

  6. 模拟Windows任务管理器CPU使用率的动态折线图-农夫山泉

    Delphi的TCanvas类可以实现各种复杂的图形输出功能,基于近期项目的需求,利用它实现了一个很炫的动态折线图(模拟了资源管理器中CPU使用率的折线图),可以直观地展现出数值的实时变化情况. 这段 ...

  7. JS字符串转换成数字

    方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后者把值转换成浮点数.只有 ...

  8. long long 与 __int64

    1.long long VC中不能用,codeblocks中 可以 #include<iostream> #include<stdio.h> using namespace s ...

  9. 【构建二叉树】02根据中序和后序序列构造二叉树【Construct Binary Tree from Inorder and Postorder Traversal】

    我们都知道,已知中序和后序的序列是可以唯一确定一个二叉树的. 初始化时候二叉树为:================== 中序遍历序列,           ======O=========== 后序遍 ...

  10. FFMPEG(一) 从V4L2捕获摄像头数据

    系列相关博文: FFMPEG(一) 从V4L2捕获摄像头数据 FFMPEG(二) v4l2 数据格式装换 FFMPEG(三) v4l2 数据编码H264 最近在学习FFMPEG,发现网上的很多例子都是 ...