Ajax 板


LINE

※ 引述《TonyQ (沉默是金)》之铭言: : 今天survey了一下各式作法 : http://www.stanlemon.net/index/articles/jquery-templates.html : 这个作法看起来好像也蛮直觉的 (对写EL的人来讲应该很熟悉) : 当然重点还是在於搭配JQuery 这点对原本就采jq结构的人很方便. :P 我试着把它运用在我们站上 , 不过搭配LiveQuery 目标是达到自动化制版跟自动化载入的功能 , (关於自动化跟原始码的部分等如果实验有所结果我会再post上来 , 顺便推荐 LiveQuery 这个plug-in , 对达成物件行为一致性非常的好用.) 当然原始的jquery.template.js , 在要重复使用的注况下, 样板要怎麽存会是个难题 , 所以我稍微小修了一下原本的结构,作了一个样板快取的储放机制 . (因为样板如果不存起来重复使用, 会觉得有点可惜) 当然效能会是作ajax loading的人最关心的issue , 因为还在实验性质 , 所以目前我只用小资料测试过, 我下一个阶段的样板比较大 , 我会再测一下数据 . 目前用底下这样的数据来测 ,每个样板处理好到append到目标物上,约20~30ms. JSON--------(支援阵列操作)---------------------------------- { sid:"111", img:'xxxx.js' } 样板结构---------------------------------------------------- <div class="jqTmp" title="imageFeed"> <div class="imageBox" uid="{{sid}}"> <div style="width: 75px; height: 75px">{{img}}</div> <div id="checkedImg_{{sid}}" > <img src="/images/icons/check.gif"/> </div> </div> 不过另外也考虑到如果当我不想采用template , template 结构也应该 要能够有server side language 产生真正的html的能力. 由於是采用字串取代的方案 , 所以这点在有regex协助下应该可以轻松达成 . (注:不代表ajax loading 可轻松转换为 full page loading , 这还是要靠流程设计.) 目前碰到的几个困境 1.我踩入的部分是直接读取 json,难免需要考虑到一些 escape word的部分, 包括样板跟json的载入由於我是先读到一个div载体内再处理 , 所以都有这样的问题, 我目前是采用 server side的 escapeHtml 来 直接避掉所有 "' 跟 id之类的特殊字员跟属性 . 再js side再作unescapeHtml 概念上很简单 , 不过实作上不少幽灵问题 , 还在处理中. 2.server side 对json escape 支援 . (另外我发现jquery append data进html的时候 , 好像也会parse掉一些js 字串 , 这部分还无暇细想.) 3.有些时候 , 比方说像是做mouseover 的tooltip body , 当这个body很复杂的时候我也会比较希望用 template 去处理 , 但是 mouseover 事件可能会重复触发很多次 , 就比不上直接存一个div再html直觉 , 所以我目前是考虑到 , 作一个 data cache , 传入的资料再加一个cache id , 存到dataset . (当然不需要做cache的data就不给cache id就好 ) 4.SEO的支援度问题 关於这点 , 我在javascript irc上跟一些国外的designer聊 , 他们一面倒的反对ajax , 因为SEO 支援度太差 . 这点我想也一直是设计者所难以顾及的地方 , 有人愿意出来探讨一下这个议题的话 , 小弟非常感激. 5.这个是目前比较还无暇去考虑的问题 , 在这点上我也跟一些js designer 有一样的通病 orz , 也就是写作过程完全不考虑 js 记忆体占用量 , 把负担交给使用者去承担的部分. 这部份等前面完成後 , 会回头在来评估一下 ,不过这构想的停损点到今天 , 如果做不出来也打算另寻方案把任务完成了. 目前所有source都还没发出来,因为还很不成熟 , 等我把手上发现的 bug 都发出来 , 会再跟大家分享一下. :) Tony --- 话说目前手边专案 jquery+ jquery.Ui.all 加一些哩哩抠抠的东西, uncompress状况下有一万多行(远目...) , 想想还真是壮观... 也让人会捏冷汗(抖) -- I am a person, and I am always thinking . Thinking in love , Thinking in life , Thinking in why , Thinking in worth. I can't believe any of what , I am just thinking then thinking , but worst of all , most of mine is thinking not actioning... --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.128.219.202 ※ 编辑: TonyQ 来自: 220.128.219.202 (07/25 11:07) ※ 编辑: TonyQ 来自: 220.128.219.202 (07/25 11:09)
1F:→ TonyQ:话说g老大 有空快点回啊!!!我都快没时间继续研究了...XD 07/25 11:11
2F:→ TonyQ:公司下一阶段目标已经确定了, 我不能在技术面逗留太久 T_T 07/25 11:11
3F:推 chph:我认为这个plugin没有使用价值, js 是拿来增强, 并非提供内容 07/25 11:18
4F:→ TonyQ:我相信chph你有你的见解 , 不过这可能要从ajax loading整个 07/25 11:19
5F:→ TonyQ:方向逆推回来才能够讨论这件事情 . 07/25 11:19
6F:→ TonyQ:我可以把这个plug-in 解读成将内容转换成各种形式的运用 , 07/25 11:20
7F:→ TonyQ:因为内容当然还是由server side 提供, js也没办法凭空生内容 07/25 11:20
8F:→ TonyQ:因为这个东西本来出发动机是要简化ajax loading近来的量. 07/25 11:20
9F:→ TonyQ:我想等周日我可以针对你提的这个主题再开一篇专栏来阐述. 07/25 11:21
10F:→ TonyQ:现在先讲到这里就好 orz 工作要紧 07/25 11:21
11F:→ TonyQ:用另一个角度来想, 某些下拉式menu要求使用者提供js array 07/25 11:22
12F:→ TonyQ:来产生资料 , 其实就是一种很特例的样板结构. 07/25 11:22
13F:→ TonyQ:所以其实js增强这个说法是值得另开专栏讨论的. 07/25 11:22
14F:→ TonyQ:至於如果是考虑到 noscript , 或script支援较弱的使用者, 07/25 11:35
15F:→ TonyQ:这也是我为什麽要考虑到server side有能力不依赖js产生内容 07/25 11:35
16F:→ TonyQ:的理由 . 07/25 11:35
17F:→ TonyQ:愿意发表意见的话 , 我很希望chph对提供内容的部分再多着墨 07/25 11:45
18F:→ TonyQ:我也可以顺便检视一下我的设计是不是还有我没有考量到的地方 07/25 11:45
19F:→ TonyQ:万分感谢 o(_ _)o 07/25 11:45







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP