[Javascript]document.getSelection,document.selecti

mikel阅读(922)

<script>
function getSel()
{
      var txt = '';
      var foundIn = '';
      if(window.getSelection)
      {
          txt = window.getSelection();
          foundIn = 'window.getSelection()';
      }else if(document.getSelection)
      {
          txt = document.getSelection();
          foundIn = 'document.getSelection()';
      }else if(document.selection)
      {
          txt = document.selection.createRange().text;
          foundIn = 'document.selection.createRange()';
      }else
          return;
      document.forms[0].selectedtext.value = 'Found in: ' + foundIn + '\n' + txt;
}
</script>
<form>
<textarea name="selectedtext" rows="5" cols="50">
</textarea><br>
<input type="button" value="Getselection" onmousedown="getSel()">
</form>
以上的代码可以捕获到选中的网页中的纯文本内容(不含HTML标签)
如果想获得包含html的内容,将document.selection.createRange().text改成document.selection.createRange().htmlText
 

[PHP]wordpress划词评论插件

mikel阅读(784)

发现一个用于Wordpress划词评论插件
下载地址:
http://code.google.com/p/select-text-comment/downloads/list
使用方法:

上传/激活

把”<?php add_text_comment();?>”这段代码复制到模板里的”single.php”,比如放到”get_sidebar()”之前。然 后还是在”single.php”里,找个合适的地方放上”<span id=”cloSEOpenselctcmt”>关闭划词评论</span>”这段。这样就算大功告成了。

如果觉得不好看,可以自己修改样式。

[Javascript]测试划词搜索

mikel阅读(719)

<script>
document.body.onload 
= tt;
function tt()
{
alert('dddddddd');
}
var b;
function te() //onselect事件
{
b
=1;
}
function a() //onmouseup事件
{
if (b==1){
alert(document.selection.createRange().text);
b
=0;
}
}
</script>
<body onselect ="JavaScript:te();" onmouseup ="JavaScript:a();">
 onselectstart ="alert('开始');"
onmouseup="alert(document.selection.createRange().text);"
//firefox使用 window.getSelection()
网页测试测试测试才儿时才扼杀
<br>
dddddddddddddddd
<SCRIPT   LANGUAGE="JavaScript">   
  
function   SelText(){   
  document.selection.createRange();   
  document.all.TestText.value   
=   unescape(document.selection.createRange().text);   
alert(
"选区左侧宽度:"+ document.selection.createRange().boundingLeft);
alert(
"选区上方高度:" + document.selection.createRange().boundingTop);
alert(
"选区高度:" + document.selection.createRange().boundingHeight);
alert(
"选区宽度:" + document.selection.createRange().boundingWidth);
  }   
  
</script>   
  
<input   type="text"   id="TestText"   name="TestText"   value=""   accesskey="A">   
  
<input   type="button"   name="btnTest"   value="Test"   onclick="SelText()">
<hr>
对象: document.selection.createRange();  返回TextRange 对象
<br>
TextRange 属性
<br>
boundingHeight 获取绑定 TextRange 对象的矩形的高度。 
<br>
boundingLeft 获取绑定 TextRange 对象的矩形左边缘和包含 TextRange 对象的左侧之间的距离。 
<br>
boundingTop 获取绑定 TextRange 对象的上边缘和包含 TextRange 对象的顶边之间的距离。 
<br>
boundingWidth Retrieves the width of the rectangle that bounds the TextRange object.  
<br>
htmlText 获取绑定 TextRange 对象的矩形的宽度。 
<br>
offsetLeft 获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置。
<br> 
offsetTop 获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置。 
<br>
text 设置或获取范围内包含的文本。 
<br>
</body>

[Javascript]Js划词搜索实现

mikel阅读(671)

网上流传的Js版划词搜索代码浏览器兼容上有问题,经过两天的改写终于做出可兼容非IE的版本.
JS代码
默认搜索引擎为:google
转自: js中国 http://www.javascriptcn.cn
http://JavaScriptxml.5d6d.com/thread-2-1-1.html

<!– 
if (navigator.appName=="Microsoft Internet Explorer") {
document.body.onload
=adddiv;  
document.onmousedown
=recordobj;  
document.ondblclick
=dbclick;  
document.onmouseup
=showselect;
else 
{
//firefox
window.onload=adddiv();  
window.onmousedown
=recordobj;  
window.ondblclick
=dbclick();  
window.onmouseup
=showselect; 

///////////////////////////////////////////////////////////////////////////////////  
var starobj,
isdb
=false,
allow
=true;
///////////////////////////////////////////////////////////////////////////////////  
function isallow()  
{  
if(allow){  
allow
=false;  
alert('is closed');  
}  
else{  
allow
=true;  
alert('is opend');  
}  
}
////////////////////////////////////////////////////////////////////////////////////  
function dbclick()  
{  
isdb
=true;  
}
/////////////////////////////////////////////////////////////////////////////////////  
//
function recordobj(evt)  
//
{  
//
starobj=event.srcElement;   //IE
//
starobj=evt.target
//


function recordobj(evt)  {  
evt 
= (evt) ? evt : ((window.event) ? window.event : "")
if (evt) {
          starobj 
= (evt.target) ? evt.target : evt.srcElement
}
//starobj=evt.srcElement;  

//////////////////////////////////////////////////////////////////////////////////////// 
function showselect(evt) {  
//test
var obj;
var strlen;
evt 
= (evt) ? evt : ((window.event) ? window.event : "")
if (evt) {
if (evt.target) 
{
obj 
= evt.target;
strlen 
= window.getSelection().toString();
}
else
{
obj 
= event.srcElement;
strlen 
= document.selection.createRange().text;
}
}
//test
var str="";  
if(obj.tagName!="A"&&obj.tagName!="INPUT"&&obj==starobj&&!isdb&&allow)  
{  
//var oText=document.selection.createRange();  //IE
//
alert(window.getSelection());
//
alert(window.getSelection().toString().length);
//
if(window.getSelection().length>0)  //错误写法
//
//////////
 
//if(window.getSelection().toString().length>0)
if(strlen.length>0)

//alert("ddd"+window.getSelection().boundingWidth());
//
alert("dddddddddddddddddddd000");
 str=strlen;  
//oText.text="BuB"+oText.text+"EuE";  
}  
//oText.select();  
//
window.getSelection.select()
}
//alert("自负" + str);
  
searchgoogle(str,evt);  
isdb
=false;  
}
//////////////////////////////////////////////////////////////////////////////////////////  
function searchgoogle(str,evt)  
{  
var obj=document.getElementById("searchgoogle");  
//alert("长度"+str.toString().length);
if(str.toString().length>0)  
{
//alert("tongguo");  
//
alert(obj);
obj.style.display="block";  
obj.style.position
="absolute";  
obj.style.zindex
=999
//alert("y" + evt.clientY + "X" + evt.clientX); 
//
//
alert(document.body.scrollTop.toString()); 
//
alert("new" + document.documentElement.scrollTop.toString());
//

if(navigator.appName=="Microsoft Internet Explorer")
{
obj.style.widht
=80;
obj.style.posTop
=document.body.scrollTop+event.y25;  
obj.style.posLeft
=document.body.scrollLeft+event.x+5;   
}
else
{
obj.style.width 
= "100px"
obj.style.top
=evt.pageY25;
obj.style.left
=evt.pageX+5

 
 
obj.innerHTML
="<a target=_blank href=http://www.google.com/search?ie=UTF-8&oe=UTF-8&q="+encodeURI(str)+" style='BORDER- RIGHT: royalblue thin solid; BORDER-TOP: royalblue thin solid; FONT- WEIGHT: bold; BORDER- LEFT: royalblue thin solid; CLIP: rect(auto auto auto auto); COLOR: #ffffff; BORDER- BOTTOM: royalblue thin solid; BACKGROUND-COLOR: inactivecaption; TEXT- DECORATION: none'>Search It!</a>";  
}  
else  
{  
obj.style.display
="none";  
}  
}
///////////////////////////////////////////////////////////////////////////////////////////////  
function adddiv()  
{
var mobj = document.createElement("div");  
mobj.id
="searchgoogle"
document.body.appendChild(mobj);  
}  
//–>  

直接在html页面中调用即可实现网页划词搜索功能.

[JQuery]jQuery插件---Clipboard Copy(复制)。

mikel阅读(857)

这个插件是用来把页面的内容复制到剪贴板的插件,使用起来很简单。

$.copy("字符串")     // 把字符串复制到剪贴板
$.copy(varStr)     // 把变量varStr的值复制到剪贴板
$("#elmID").copy()           // 复制id为elmID的节点里的文字
$("#elmID input").copy()     // 复制id为elmID的节点下所有input的值
$("#elmID input").copy("|") // 复制id为elmID的节点下所有input的值,并以“|”隔开

好了,看看演示的效果吧!

 

值得注意的是:
$("#elmID").copy() 只id为elmID的节点里的文字,而不复制elmID的子节点的文字
("#elmID  *").copy() 只复制elmID的子节点的文字,而不复制id为elmID的节点里的文字
我测试的时候是这样的,整理的时候没那么仔细,大家也测试看看是不是这样。

 
 
 
转:http://www.94this.com.cn/article/247.htm
本篇文章来源于 cssrain.cn 原文链接:http://www.cssrain.cn/article.asp?id=1157

[Javascript]鼠标事件

mikel阅读(548)

事件 浏览器支持 描述
onClick IE3|N2|O3 鼠标点击事件,多用在某个对象控制的范围内的鼠标点击
onDblClick IE4|N4|O 鼠标双击事件
onMouseDown IE4|N4|O 鼠标上的按钮被按下了
onMouseUp IE4|N4|O 鼠标按下后,松开时激发的事件
onMouSEOver IE3|N2|O3 当鼠标移动到某对象范围的上方时触发的事件
onMouseMove IE4|N4|O 鼠标移动时触发的事件
onMouSEOut IE4|N3|O3 当鼠标离开某对象范围时触发的事件
onKeyPress IE4|N4|O 当键盘上的某个键被按下并且释放时触发的事件.[注意:页面内必须有被聚焦的对象]
onKeyDown IE4|N4|O 当键盘上某个按键被按下时触发的事件[注意:页面内必须有被聚焦的对象]
onKeyUp IE4|N4|O 当键盘上某个按键被按放开时触发的事件[注意:页面内必须有被聚焦的对象]
页面相关事件
事件 浏览器支持 描述
onAbort IE4|N3|O 图片在下载时被用户中断
onBeforeUnload IE4|N|O 当前页面的内容将要被改变时触发的事件
onError IE4|N3|O 捕抓当前页面因为某种原因而出现的错误,如脚本错误与外部数据引用的错误
onLoad IE3|N2|O3 页面内空完成传送到浏览器时触发的事件,包括外部文件引入完成
onMove IE|N4|O 浏览器的窗口被移动时触发的事件
onResize IE4|N4|O 当浏览器的窗口大小被改变时触发的事件
onScroll IE4|N|O 浏览器的滚动条位置发生变化时触发的事件
onStop IE5|N|O 浏览器的停止按钮被按下时触发的事件或者正在下载的文件被中断
onUnload IE3|N2|O3 当前页面将被改变时触发的事件
表单相关事件
事件 浏览器支持 描述
onBlur IE3|N2|O3 当前元素失去焦点时触发的事件 [鼠标与键盘的触发均可]
onChange IE3|N2|O3 当前元素失去焦点并且元素的内容发生改变而触发的事件 [鼠标与键盘的触发均可]
onFocus IE3|N2|O3 当某个元素获得焦点时触发的事件
onReset IE4|N3|O3 当表单中RESET的属性被激发时触发的事件
onSubmit IE3|N2|O3 一个表单被递交时触发的事件
滚动字幕事件
事件 浏览器支持 描述
onBounce IE4|N|O 在Marquee内的内容移动至Marquee显示范围之外时触发的事件
onFinish IE4|N|O 当Marquee元素完成需要显示的内容后触发的事件
onStart IE4|N|O 当Marquee元素开始显示内容时触发的事件
编辑事件
事件 浏览器支持 描述
onBeforeCopy IE5|N|O 当页面当前的被选择内容将要复制到浏览者系统的剪贴板前触发的事件
onBeforeCut IE5|N|O 当页面中的一部分或者全部的内容将被移离当前页面[剪贴]并移动到浏览者的系统剪贴板时触发的事件
onBeforeEditFocus IE5|N|O 当前元素将要进入编辑状态
onBeforePaste IE5|N|O 内容将要从浏览者的系统剪贴板传送[粘贴]到页面中时触发的事件
onBeforeUpdate IE5|N|O 当浏览者粘贴系统剪贴板中的内容时通知目标对象
onContextMenu IE5|N|O 当浏览者按下鼠标右键出现菜单时或者通过键盘的按键触发页面菜单时触发的事件 [试试在页面中的<body>中加入onContentMenu="return false"就可禁止使用鼠标右键了]
onCopy IE5|N|O 当页面当前的被选择内容被复制后触发的事件
onCut IE5|N|O 当页面当前的被选择内容被剪切时触发的事件
onDrag IE5|N|O 当某个对象被拖动时触发的事件 [活动事件]
onDragDrop IE|N4|O 一个外部对象被鼠标拖进当前窗口或者帧
onDragEnd IE5|N|O 当鼠标拖动结束时触发的事件,即鼠标的按钮被释放了
onDragEnter IE5|N|O 当对象被鼠标拖动的对象进入其容器范围内时触发的事件
onDragLeave IE5|N|O 当对象被鼠标拖动的对象离开其容器范围内时触发的事件
onDragOver IE5|N|O 当某被拖动的对象在另一对象容器范围内拖动时触发的事件
onDragStart IE4|N|O 当某对象将被拖动时触发的事件
onDrop IE5|N|O 在一个拖动过程中,释放鼠标键时触发的事件
onLoseCapture IE5|N|O 当元素失去鼠标移动所形成的选择焦点时触发的事件
onPaste IE5|N|O 当内容被粘贴时触发的事件
onSelect IE4|N|O 当文本内容被选择时的事件
onSelectStart IE4|N|O 当文本内容选择将开始发生时触发的事件
数据绑定
事件 浏览器支持 描述
onAfterUpdate IE4|N|O 当数据完成由数据源到对象的传送时触发的事件
onCellChange IE5|N|O 当数据来源发生变化时
onDataAvailable IE4|N|O 当数据接收完成时触发事件
onDatasetChanged IE4|N|O 数据在数据源发生变化时触发的事件
onDatasetComplete IE4|N|O 当来子数据源的全部有效数据读取完毕时触发的事件
onErrorUpdate IE4|N|O 当使用onBeforeUpdate事件触发取消了数据传送时,代替onAfterUpdate事件
onRowEnter IE5|N|O 当前数据源的数据发生变化并且有新的有效数据时触发的事件
onRowExit IE5|N|O 当前数据源的数据将要发生变化时触发的事件
onRowsDelete IE5|N|O 当前数据记录将被删除时触发的事件
onRowsInserted IE5|N|O 当前数据源将要插入新数据记录时触发的事件
数据绑定
事件 浏览器支持 描述
onAfterPrint IE5|N|O 当文档被打印后触发的事件
onBeforePrint IE5|N|O 当文档即将打印时触发的事件
onFilterChange IE4|N|O 当某个对象的滤镜效果发生变化时触发的事件
onHelp IE4|N|O 当浏览者按下F1或者浏览器的帮助选择时触发的事件
onPropertyChange IE5|N|O 当对象的属性之一发生变化时触发的事件
onReadyStateChange IE4|N|O 当对象的初始化属性值发生变化时触发的事件

[PHP]让PBDigg和UCenter通信成功

mikel阅读(1008)

这个是我在内网搭的,看到pb出2.0正式版啦,就来看下

其实很简单,你可以先安装好PB,然后修改根目录下data\SQL.inc.php文件,只要在最下边的“?>”之前,添加如下代码:

/*===============UCenter======================*/

define(’UC_CONNECT’, ‘mySQL’);

define(’UC_DBHOST’, ‘localhost’);

define(’UC_DBUSER’, ‘数据库用户名’);

define(’UC_DBPW’, ‘数据库密码’);

define(’UC_DBNAME’, ‘数据库名’);

define(’UC_DBCHARSET’, ‘utf8′); /*编码*/

define(’UC_DBTABLEPRE’, ‘`test`.uc_’);/*数据库表名前缀,uc的*/

define(’UC_DBCONNECT’, ‘0′);

define(’UC_KEY’, ‘f5J0Y525Ca9bk1CfP0u2BcdcZ4Y0d0B6c6B9H8Wa02Je8fRc1ej2yc61s897Jf22′);/*key 你可以在这里边随便改个地方然后拿来用就可以啦*/

define(’UC_API’, ‘http://bb.clin003.com/u/c’);/*这个是uc的路径url*/

define(’UC_CHARSET’, ‘utf-8′);

define(’UC_IP’, ‘192.168.1.96′);/*uc的所在ip*/

define(’UC_APPID’, ‘2′);

define(’UC_PPP’, ‘20′);

这个是我参考uchome文件修改来的。

然后到PB后台:系统设置 » 功能设置 开启UC整合,确定就可以啦,

然后再到uc后台编辑pb的应用设置

应用名称:随便

接口 URL:http://bb.clin003.com/pb (你的pb所用的url)

应用 IP:可以不填

通信密钥:上边的,让你修改几个地方的那串字符

是否开启同步登录:是

标签单条显示模板:

<a href=”{url}” target=”_blank”>{subject}</a>

标签模板标记说明:可以没有

应用类型:其他

是否接受通知:是

然后提交,就看到通信成功

, ,

转载原创文章请注明,转载自:Lin’s空间|Only[http://clin003.com]