Category Archives: 所谓技术
什么叫实践派?就是什么都没正经学过,概念都没搞懂可是偏偏能弄出点动静来。
动态实现指定图片半透明及鼠标事件
说明:在不改变HTML代码的前提下,通过CSS和JavaScript,对指定的图片实现半透明效果。并为该图片添加鼠标滑过和滑出特效。 具体实现: 1.假设我们要操作的图片放置在一个id="imgbox"的div容器中。如下面的代码: <div id="imgbox" style="width:700px;margin:auto;"><img src="/images/logof.gif"></div> 2.首先,在css中增加两个类定义,为了避免影响到其它图片,最好是用选择限定符加以限定。如下代码: #imgbox img.low{-moz-opacity:0.5;filter:alpha(opacity=50);cursor:hand;}#imgbox img.high{-moz-opacity:1;filter:alpha(opacity=100);cursor:hand;} 3.然后在网页的<head>区域增加JavaScript,JavaScript将在页面载入完成之后,为我们指定的图片添加半透明效果和鼠标事件: <script language="JavaScript" type="text/javascript">window.onload = function() { var imgNode = document.getElementById("imgbox").getElementsByTagName("img")[0]; imgNode.setAttribute("class","low"); imgNode.className = "low"; imgNode.onmouseover = function(){ this.setAttribute("class","high"); this.className = "high"; } imgNode.onmouseout = function(){ this.setAttribute("class","low"); this.className = "low"; }}</script> 补充说明: 在上面的JavaScript中,设置图片的class属性的时候,同时使用了两种方式: imgNode.setAttribute("class","low");imgNode.className = "low"; 第一种方式是针对IE以外的浏览器,按理说设置class属性对所有的浏览器都是有效的。但是IE比较有个性,它通过元素的className来定义class属性。这是IE不符合规范的地方,但是我们不得不考虑到IE占据的广大市场。所以,同时使用两种方式,从而达到跨浏览器兼容的效果。 适合多图片调用的修改 当时做的时候是针对单张图片的情况做的。如果要用于调用的多图片,可以把JS代码做如下修改: <script … Continue reading
再测试一下和oblog的Trackback Ping
原来说的那个问题,在不同语言编码的blog之间发送Trackback Ping会导致显示乱码的问题,刚才在给 感觉 的博客发送时,又出现了。 解决方法我已经有了,最近比较忙把这事给忘了。正好,顺手改了再给 感觉 发一个,这个的目的就是测试一下看看是不是还乱码。 P.S. 测试完了, 果然已经不乱码了:)
痛苦面对:跨域身份认证的问题
今天周末,学校小语种提前招生宣传。一早就起床了(我的周末啊,555……),上午抽空来了趟办公室,上网继续找找有关跨域身份认证的信息,结果还是没什么进展。看来有可能还是得回到IFRAME或者跳转的思路上来。突然想起来,上感觉的博客看了一下,哈,第一条就是关于整合的问题。这次看来我们几个都被这个跨域认证逼得不行了。痛苦啊…… 以下引用自感觉(Oblog)的博客 最近一直忙于三家整合的事情,被同步登录的问题搞的真不爽,因为涉及到一个第三方cookie的问题,IE隐私属性的默认值是拒绝的,造成一个结果是不同域名控制的站点写不进去cookie,而让每个用户去手动更改这个默认值根本不具备和操作性,真被他搞晕了,,而FF和Opera默认都是允许了,造成了IE不正常,其他的正常,而说到底,IE不正常,其实就不算整合成功,用他的人太多了……我曾经想过用session过渡一下,等用户登录的时候验证一下再写入cookie,结果又是IE出了问题,不同窗口的IE没法继承同一个站点的session,除了IE,其他的又都正常,忙了半天又绕回来了,,整合忙活了半个月了,而研究cookie至少用了10天,甚至超过这个数,其他的其实都是体力活,思路一明确,代码很快就搞定,而这个cookie找不到思路,搜索引擎都搜遍了,能想到的方法都测试了,然后都被一一否定。。。。阿泰说我再这样会疯掉的,其实我已经疯了!!!! cookie啊!!!我真的很不爽的!!!
CSS:模拟Windows窗口及DIV居中
利用CSS,尝试做了一个仿Windows窗口的横向纵向均居中的Div效果: 效果图如下: 以下是完整源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>动易远程接口中转</title><style type="text/css"><!–body {margin:0px;background:#ccc;height:auto;font: 9pt Tahoma;text-align:center;color: #000;}#outbox {position:absolute;z-index:888;top:50%;left:50%;margin:-120px 0 0 -200px;width:400px;height:auto;background:#D4D0C8;border:1px solid #ccc;}#title,#body,#bottom {border-top:1px solid #ddd;border-bottom:1px solid #999;border-right:1px solid #999;border-left:1px solid #ddd;}#title {line-height:28px;background:#c4c0c8;}#body {height:150px;text-align:left;padding:10px 10px;}#bottom … Continue reading
XMLHTTP与中文字符编码问题
今天测试新接口的发送和响应,为了便于和Oblog和动网的开发人员进行测试,我特地把动易接口的相关操作单独写了一个测试工具包。 结果别说跟动网和Oblog联合测试了,自己测试的时候就出现了意想不到的问题。 首先在构造请求的时候,我用了下面的方式来生成安全码: 'strKey为配置文件中的安全密钥;'strName为提交测试的用户名'objXmlDoc为XMLDOM对象syskey = Md5(strName & strKey, 32)objXmlDoc.documentElement.selectSingleNode("//syskey").text = syskeyobjXmlDoc.documentElement.selectSingleNode("//username").text = strName 然后在服务器端用下面的代码处理: 'strKey为配置文件中的安全密钥;'strName为提交测试的用户名'objXmlDoc为XMLDOM对象objXmlDoc.Load(Request)syskey = objXmlDoc.documentElement.selectSingleNode("//syskey").textstrName = objXmlDoc.documentElement.selectSingleNode("//username").textIf Ucase(syskey) = Ucase(Md5(strName & strKey, 32) Then '安全码检验成功 Else '安全码检验失败 End If 这里服务器端和发送请求的文件都调用的是同一个配置文件,因此strKey的值是完全一样的。可是不管怎么测试,加密出来的安全码始终都不相等。 我开始怀疑是编码的问题导致,于是在发送请求端显示声名我发送的信息是utf-8编码的,在服务器端也作了相应处理。可是结果依旧。 按照原来处理Trackback的方式,我用Unicode编码函数在发送前对中文用户名先进行编码,结果还是不行。 后来跟NT讨论这个问题,我把文件打包发给他看,还在发送的时候,他问了一句:你用MD5处理用户名? 听到这句话我突然想到,对啊,发送前的syskey是用还没处理的UserName直接生成的,接受到的UserName经过DOM处理,已经是Unicode状态了。于是我改了一下,用下面的方式来生成syskey: 'strKey为配置文件中的安全密钥;'strName为提交测试的用户名'objXmlDoc为XMLDOM对象objXmlDoc.documentElement.selectSingleNode("//username").text = strNamestrName = … Continue reading
动易2006版对DPO接口支持细节
1.全局操作 动易系统在进行任何操作时都支持的元素以及处理细节说明。 1.1 发送和接收请求时处理的元素 appID = "PowerEasy" action = [checkname|reguser|login|logout|update|delete|getinfo] syskey = 32位加密安全码 username = string 1.2 返回信息包含的元素 appID = "PowerEasy" status = [0|1] body message = [null|string] 从动易系统发出的请求包中,不论action的值是什么,都必然包含1.1中列出的所有元素;同样,对于任意程序发送到动易的请求,动易系统也会检查处理这些元素。 动易系统处理完请求后,不轮处理结果如何,返回信息中必定包含1.2中列出的所有元素;同样,对于其它程序返回的信息,动易系统也会检查处理这些元素。 除了全局性的元素外,具体每个操作,动易对DPO规范指定的元素的支持见下面的说明。 2.检查注册 2.1 发送请求包含的元素 appID = "PowerEasy" action … Continue reading



