作者No (you stay there)
看板Ajax
标题Re: [推荐] PTT网页插件/外挂:文章内嵌影音图片 …
时间Thu Jun 30 02:37:48 2011
※ 引述《tomin (蓝蓝紫黄橘 粉灰白绿咖)》之铭言:
: ※ [本文转录自 Browsers 看板 #1E2rkV_u ]
: 作者: tomin (蓝蓝紫黄橘 粉灰白绿咖) 看板: Browsers
: 标题: Re: [推荐] PTT网页插件/外挂:文章内嵌影音图片 …
: 时间: Thu Jun 30 01:06:37 2011
: : 作者: tomin (蓝蓝紫黄橘 粉灰白绿咖) 看板: EZsoft
: : 标题: [推荐] PTT网页插件/外挂:文章内嵌影音图片 PTTViewer
: : http://userscripts.org/scripts/show/105740
: 推 No:遇到什麽问题啊? 06/29 21:19
: 既然你大方慈悲的发问了,我就诚心诚意的回答你!本板可以讨论技术问题吗?
: 其实有点一言难尽。
: 我觉得可能无解的问题:
: 1.中文乱码问题
: 我想要一次读多篇标题进来,比如说50篇标题,减少按上下页的次数。也想要在
: 文章列表就去读文章内容,点标题时再用modal/dialog秀出来,这样就不必切画面。
: Ajax去读读得到,热门看板列表就是ajax去读的,只是中文会变乱码,
: 我查资料的结果,似乎只能ptt站方response时送header big5/utf-8编码,
: 不然我只能读到乱码资料。
试试看
$.ajax({
url: "
http://webptt.com/cn.aspx?n=bbs/movie/M.1309367548.A.CB1.html",
dataType: "html",
beforeSend: function(xhr){
xhr.overrideMimeType('text/html; charset=big5');
},
success: function(data){
alert(data);
}
});
我直接加到你的脚本测试
抓出来的中文可以正确显示为big5
: ======================================================================
: 应该是我写法的问题:
: 1.我想要设一个按钮去做版本检查checkScriptUpdate(),按了才检查。
: 怪的是我若每页都检查,可正常check。但我将它绑在button onclick时,
: 也是会call checkScriptUpdate(),但是它跑到GM_xmlhttpRequest()没反应,
http://wiki.greasespot.net/0.7.20080121.0%2B_compatibility
jQuery我不熟,bind可能要用上面网址里的方法解
但若直接getElementById,用addEventListener绑事件,却可以执行
: onerror也没回应,改用$.ajax去check则是error + 空白讯息。
用$.ajax会跨网域,被无视了吧 我想
: ======================================================================
: 一般问题:
: 1.自己动态新增的html,跟本来就存在的html,似乎event的处理有所差异。
: a)像我发现.live没办法去绑动态新增的,只能动态产生後再.bind。
: b)要取消form submit似乎只能用e.preventDefault();而不能用return false;
又必须提一次,jQuery我不熟XD
或许差异是因为,jQuery在你脚本里是append到head里面执行
但GM user script执行则是在它自己的sandbox内
window和document都是wrap进来sandbox内的
与真正的window、document不同
才造成(a)这样的差异
: 类似上述这两件事,感觉跟习惯的写法有所差异。
: 还有可能遇到那些情况,只能用某种写法,而不能用常用的写法?
其他情况我还有印象的是
setTimeout、setInterval写法不太一样
同上面提过,GM的 wrapper window 与真正的 window 不同
另外,unsafeWindow 和真正的 window 也还是有些许差异
要使用时可能都要绕一下
大部分时候document没啥问题
但有些FF版本要找document.form时,部分方法无法正确取得form
: 2.承上,script执行的时间点、位置,大概在那里?
: 我是想成script是一个档,在原本网页DOM Ready後,加在</body>前。
Greasemonkey user scripts run on the document once the DOM is ready,
but before the onload event.
: 3.script可想成跟原本网页一起放在同一个资料夹,同一个domain?
不太一样
http://wiki.greasespot.net/Greasemonkey_Manual:Environment
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.252.78.183
※ 编辑: No 来自: 111.252.78.183 (06/30 02:41)
1F:推 tomin:好帖先顶 我再慢慢参悟XD 06/30 02:48
2F:→ No:顺道题一下,我用脚本看这一篇,最後的连结没完整匹配到XDD 06/30 02:48
※ 编辑: No 来自: 140.134.26.22 (06/30 08:54)
3F:→ tomin:呵呵 我看到了 已更新在新版本 06/30 11:37
4F:→ terlin10:No必推...不过我推文用掉了,先给箭头~XD 06/30 11:39