首页 > 网站 > CMS建站 > 正文

JS扩展Z-Blog图片验证码的单击自动刷新与评论内容自动保存

2020-10-28 20:20:09
字体:
来源:转载
供稿:网友
在script/common.js最后加入下面的话可以实现图片验证码的自动刷新与评论内容自动保存(ForIE)
由于Z-Blog的JS扩展机制不够好,在不重建的情况下扩展东西只能用window.onload(IE)。
既然用了window.onload,那就干脆用window.clipboardData了。
大家是不是期盼这两个功能很久了?没有了Ajax的,这两个功能就太重要太重要太重要了。
实际这个函数因为先天缺陷并不完美,下一版,构想在每一页下面加上一句话读一次LoadExtraScript()。
然后通过这个来自动刷新验证码,不用手点(现在用window.onload作自动的很慢,因为要等待图片载入)其实应该在img载入onload的时候触发一个自动刷新验证码的函数objImage.src=objImage.src+"&random="+Math.random();或者验证码干脆就不用什么img标签,干脆就用纯js建立就可以保证后退之后验证码也自动刷新了,现在不少大型网站就是这样的办法!
甚至把现在每一页下面的那个东西也集成进去。
顺便说一句,前两天突然想到了为什么重建速度这么慢,为什么自动安装脚本那么快。。。。。是不是有点启发??能不能做得像自动安装脚本一样快?呵呵,想到了没?:)
复制代码 代码如下:

//********************************************************* 
// 目的:    扩展函数入口 
// 输入:    无 
// 返回:    无 
//********************************************************* 
function LoadExtraScript() 

    try{ 
  ValidCodeRefresh(); 
  SaveComment(); 
  }catch(e){} 

//********************************************************* 
// 目的:    鼠标单击图片后自动刷新验证码 
// 输入:    无 
// 返回:    无 
//********************************************************* 
function ValidCodeRefresh(){ 
  var imgs= document.getElementsByTagName("img"); 
  var hint = document.createElement("span"); 
  hint.innerHTML=" 如果您刚刚按下[后退]请点击图片刷新验证码"; 
  for (var i = 0; i < imgs.length; i++){ 
    if(imgs[i].src.indexOf("c_validcode.asp?name=commentvalid")!==-1){ 
    var objImage=imgs[i]; 
    objImage.parentNode.appendChild(hint); 
    objImage.attachEvent('onmouseover', function(){objImage.style.cursor='hand';}); 
    objImage.attachEvent('onclick', function(){objImage.src=objImage.src+"&random="+Math.random();}); 
    } 
  } 

//********************************************************* 
// 目的:    用户提交评论之后自动保存在剪贴板 
// 输入:    无 
// 返回:    无 
//********************************************************* 
function SaveComment() 

  var btnSumbit=document.getElementsByName("btnSumbit"); 
  var txaArticle=document.getElementById("txaArticle"); 
  var hint = document.createElement("span"); 
  hint.innerHTML="<p>提交之后您的评论内容会自动保存在剪贴板</p>"; 
  txaArticle.parentNode.appendChild(hint); 
  btnSumbit[0].attachEvent('onclick', function(){window.clipboardData.setData("Text",txaArticle.innerText);}); 

//********************************************************* 
// 目的:    扩展函数-载入 
// 输入:    无 
// 返回:    无 
//********************************************************* 
window.onload=LoadExtraScript; 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表