关于网页前端框架art.dialog的一些问题

今天有人在群里发问:“art.dialog. texterea 里面 onkeyup  怎么不起作用啊?artdialog 如何给textarea 添加事件?”。

我最近用artDialog时也发现了几个问题,后来发现新版的有问题,如果使用旧版本则没有这个问题,我链接到一个页面,会有一个弹出,然后自动关闭。

当我们写下如下代码:

  
  
  
  
  1. function aa(){ 
  2.   
  3. var haha = 1; 
  4.   
  5. art.dialog({ 
  6.     content: 'hello'
  7.     ok: function () { 
  8.      this.title('关闭').time(3); 
  9.       haha = 2; 
  10.       return false
  11.     }, 
  12.     cancel:function(){this.close();} 
  13. }); 
  14.   
  15. return haha; 
  16.  

如何在对话框里点"是",改变haha值为2啊?

这个函数看似简单,但是你试试就发现,没有返回。其实art内部已经跨越多个函数了,可以试试把haha设为全局变量。如何做呢?不要在函数内部声明haha。于是,代码成了

  
  
  
  
  1. var haha = 1; 
  2. function aa(){ 
  3.   
  4. art.dialog({ 
  5.     content: 'hello'
  6.     ok: function () { 
  7.      this.title('关闭').time(3); 
  8.       haha = 2; 
  9.       return false
  10.     }, 
  11.     cancel:function(){this.close();} 
  12. }); 
  13.   
  14. return haha; 

原来是传说中的闭包在搞怪啊。

你可能感兴趣的:(JavaScript,jquery,artdialog)