表情图标的Greasemonkey脚本

石头兔 发表于 2006-04-28 23:27:18

今天又花了点儿时间,把之前说的Greasemonkey的脚本写出来了。方便那些使用了ff和Greasemonkey的,并且不愿意,或记不住表情代码的人。

一开始,走了一些弯路。之前做的给回复框加表情图标的时候,其实就是用innerHTML直接修改其中的一个单元格的内容。这没什么问题。不过今天做这个脚本,可是费了不少功夫。直接用innerHTML对其中一个单元格的内容修改,会造成含有<form>的表格内部的代码重排,而夹在两个<tr>之间的<form>会被自动关闭。导致的结果是,点击提交,也可以正常进行连接,但是,编写的内容全部丢失。

想尽办法也没有解决,只好放弃这种修改的方式,改用插入的方式。不允许我修改表格单元,那我就新建一行,然后再新建两个表格单元,然后再初始化成我希望的内容就可以了。试验之后,确实没问题。不过,在IE Tab中不能使用。大概是因为Greasemonkey无法处理IE Tab吧。

效果图:


代码如下:

转载、引用请注明出处,谢谢

// ==UserScript==
// @namespace http://booker.yculblog.com
// @name Yculblog Smiley Replyer
// @description Add smileys to the reply form in admin area.
// @include http://www.yculblog.com/editfollowup.php?*
// ==/UserScript==


var urlBase = "http://booker.yculblog.com/images/smiley/1/";
var picName = new Array("1", "2", "3", "4", "5", "6", "7", "8", "10", "11", "19", "20");
var smileyCode = new Array("[:-)]", "[:-(]", "[XD]", "[;-)]", "[*^_^*]", "[:-O]", "[o_O]", "[T_T]", "[-_-b]", "[:-D]", "[#_#]", "[^.^]");

var s2="";
var i;
for(i=0; i < picName.length; i++){
s2 = s2 + "<img src='" + urlBase+picName[i] + ".gif' alt='' style='cursor:pointer;' onclick='document.getElementsByTagName(\"textarea\")[1].value = document.getElementsByTagName(\"textarea\")[1].value + \"" + smileyCode[i] + "\";' />";
}

var tbs = document.getElementsByTagName("table");

var trs = tbs[1].insertRow(7);
if(trs){
var tds = trs.insertCell(-1);
if(tds){
tds.innerHTML="<b>表情</b>";
tds.setAttribute("align","right");
}

var td = trs.insertCell(-1);
if(td){
td.innerHTML=s2;
}
}

保存成一个js文件,例如:yculblogsmileyreplyer.user.js

然后安装到Greasemonkey就可以了。

代码的注释说明就不写了,和之前的那个大同小异。

-------------------
终于厚着脸皮把这个东西发到http://userscripts.org/上边去了
这里http://userscripts.org/scripts/show/3958

--------------
发现这个东西在我的Ubuntu下的Firefox中会显示乱码,虽然只是“表情”两个字的乱码。估计是和脚本文件的编码有关。

曾经的这一天...


收藏: QQ书签 del.icio.us 订阅: Google 抓虾

最新评论


  • 鼻涕鱼
    2006-04-27 19:57:27

    以后有什么电脑上的疑难杂症就来问兔子拉,呵呵~

    欢迎欢迎

  • 2006-05-01 19:25:22 http://yyzz0584.ycool.com/

    偶滴叶子是人鱼做滴...又从她那看到另一个强人...
    以后有什么多帮忙..谢拉!

    不强不强
    不谢不谢
    [:-D]


  • sky
    2006-05-01 20:40:18

    [T_T]您这个不强.那我不是菜到家拉..
    恩恩......

    以后还要多多请教你呢..呵呵!!!

    [-_-b]

    尽管来问吧


  • wuxinshi
    2006-05-04 23:53:28

    自从我使用 工具-“新建用户脚本”的方法安装了一个错误的脚本之后,这个“新建用户脚本”的命令就失效了,点下去一点反应都没有。兔兄救我~~

    你用那个“Manage User scripts”把错误脚本删掉试试。

    实在不行,就重装这个扩展吧。

    另外你可以找找扩展安装的目录,修改这个Greasemonkey的config.xml。不过这个目录具体在什么地方,我记不太清楚了


  • wuxinshi
    2006-05-05 18:42:49

    实在不行啊兔兄。那个错误脚本在管理里面根本没影儿,Greasemonkey也被我重装了,情况依旧。最惨的是打开用户脚本的操作变成了下载。。。于是我现在是用非常非常麻烦的方法才可以安装用户脚本。。[T_T][T_T][T_T]

    这个我就没办法了。


  • 浑沌
    2007-02-23 00:19:22 匿名 121.10.*.*

    [^.^]
    来的时候看到访问人数是:0022222~
    如此格致的数字被我抢到了!~[:-D][:-D]

    恭喜恭喜


  • aa
    2007-02-24 22:48:44 匿名 221.229.*.*

    [>___

    -___________-


  • asdasd
    2008-03-21 11:43:59 匿名 121.201.*.* http://www.17173.com

  • 毛
    2009-05-19 17:55:15

    我想修改歪酷的回复图标 怎么改呢?

    很遗憾,很抱歉,我已经不再弄这个了。

    如果你非要改的话,要么参考我的文章,自己想办法,要么向小歪提意见吧。

发表评论

* 昵称

已经注册过? 请登录

新用户请先注册 以便能显示头像及追踪评论回复

Email
网址
* 评论
表情
 
 

分类小组论坛
杂谈, 娱乐、八卦, 文学、艺术, 体育, 旅游、同城, 象牙塔, 情感, 时尚、生活, 星座, 科技

请注意遵守中华人民共和国法律法规, 如威胁到本站生存, 将依法向有关部门报告, 同时本站的相关记录可能成为对您不利的证据.

相关法律法规
全国人大常委会关于维护互联网安全的决定
中华人民共和国计算机信息系统安全保护条例
中华人民共和国计算机信息网络国际联网管理暂行规定
计算机信息网络国际联网安全保护管理办法
计算机信息系统国际联网保密管理规定