Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- shizuko: 嗯
- shizuko: 首先……这边还有多少人活着呢?
- shizuko: ……大家都在做什么?
- StayMaverick: 看 Python。
- loorson: 活着呢
- ping_alive: ACTION 加班划水
- shizuko: 好吧……总之开始吧
- shizuko: .startmeeting
- MeowBot: Meeting started! use .action, .agreed, .info, .chairs, .subject and .comments to control the meeting. to end the meeting, type .endmeeting
- MeowBot: Users without speaking permission can use .comment #project-geek-js followed by their comment in a PM with me to vocalize themselves.
- shizuko: 首先呢,这次开始我们正式进入浏览器相关JS的讨论了
- shizuko: 不过并不是说你们已经 JS 毕业了……以后还是有很多东西要学的……
- shizuko: 哪怕已经在相关领域工作了几年的程序员应该也不敢说自己什么都会了吧……
- StayMaverick: Array.prototype.slice.call( document.getElementsByClassName( "Xc4" ), 0 ).map( function( e ) { return e.parentNode; } ).forEach( function( e ) { e.parentNode.removeChild( e ); } );
- StayMaverick: 抱歉,敲错位置了……
- shizuko: 嗯,总而言之,目前让我们把重点转移到浏览器相关吧
- shizuko: 刚才 StayMaverick 前辈的代码就是一段很好的浏览器 JS 范例
- StayMaverick: 只是想清掉系统消息而已……
- shizuko: 大致意思就是,找到所有 class 为 Xc4 的元素,然后将其父元素删除掉,大概
- shizuko: 大家可以看看能不能读懂……
- StayMaverick: 嗯……
- shizuko: 然后就会发现其实前端JS也不难,大概
- shizuko: 因为很快要开始讲网页了,所以大家估计不可避免地需要自己写一些网页来测试
- shizuko: 不过每次都手打一整个网页 HTML 太麻烦了
- shizuko: 所以推荐大家用 jsfiddle 之类的来调试
- shizuko: 比如说,这次我们来看这个: http://jsfiddle.net/u6F6v/
- MeowBot: [ Edit fiddle - JSFiddle ] - jsfiddle.net
- shizuko: 这个可以用来快速地编写一段小的代码示例或者测试,很方便
- shizuko: 以后大家也可以用这个来实验,或者展示交流什么的
- shizuko: 我们就从这里开始吧
- shizuko: 首先大家先确认一下,是不是都明白是怎么回事了……
- shizuko: 看看 results 部分,能理解这些是怎么做的吗?
- shizuko: 再观察一下 HTML ,能看懂最好啦
- shizuko: 嗯,请问这里有谁还看不懂呢?
- shizuko: 嘛,假设都看懂了好了……
- shizuko: 上次也说过,对 HTML 有一定了解会比较好
- shizuko: 如果还没有了解过的话,慢慢学习就行,不用着急
- shizuko: CSS 部分刚才好像稍微出了一点问题……可以试试看这个: http://jsfiddle.net/Px3vb/
- MeowBot: [ Edit fiddle - JSFiddle ] - jsfiddle.net
- shizuko: 然后这次我们重点要讨论的是左下角的 JS 部分
- shizuko: 关于这段 JS 的效果,大家可以试试看点击右下角页面上的各种元素
- shizuko: 应该会显示出元素的名字
- shizuko: 比如 DIV 或者 IMG
- shizuko: 嗯,这个暂且就是这样了……至少我们已经有一个可以工作的环境了
- CnSiC: <!-- Firefox 没有 innerText -->
- shizuko: ……诶,是吗?
- shizuko: Fixed: http://jsfiddle.net/Nb7rG/
- MeowBot: [ Edit fiddle - JSFiddle ] - jsfiddle.net
- StayMaverick: innerText 是 IE 的,DOM 是 .text
- shizuko: 嘛,暂时就好了……
- StayMaverick: ……Content
- shizuko: 没注意嗯……
- shizuko: 下次小心一点就可以了
- shizuko: 然后呢,这里按 Run 可以测试结果
- shizuko: 所以修改过代码以后按一下 Run 就好了
- shizuko: 不过,如果想要分享,则需要按 Save 或者 Fork
- shizuko: 然后链接可以复制给大家查看
- StarBrilliant: 终于讲jsfiddle了
- shizuko: 不多浪费时间了……总之 jsfiddle 的基本使用就这样吧
- StarBrilliant: shizuko: 话说我要加Hangouts
- StarBrilliant: shizuko: 请加我 Sam Bliss
- shizuko: StarBrilliant: 等下吧……现在真的不适合处理这个……
- shizuko: 正在手忙脚乱调试 jsfiddle ……
- shizuko: 嗯,这段代码的作用大概是,当点击页面的时候,把 .output 的文字设置成被点击元素的标签名称……
- StarBrilliant: shizuko: 上周你就说加我的…… TAT
- shizuko: 可读性大概可以……
- shizuko: StarBrilliant: 如果不立刻马上加环聊的话,是不是就没法继续讨论了?
- StarBrilliant: TAT 我错了
- shizuko: 然后呢,最下面的表格那里有 modify 按钮
- shizuko: 按一下以后……什么也没发生……除了显示 BUTTON 以外
- shizuko: 啊哈哈……这个是为了告诉大家,那些按钮不是全自动的……不是因为名字叫做 Modify 就能改变内容的……
- shizuko: (这样说真的没问题吗?)
- shizuko: 总之……是需要 JS 来实现这些功能的。
- StayMaverick: +StarBrilliant 已加,请查收。
- shizuko: 很多网页上常见的互动元素,背后都是 JS 实现的
- shizuko: pia MeowBot
- StarBrilliant: 没收到,一小时后我再来找你
- shizuko: 嗯……大家在经过一段时间的学习后,就能自己实现这样的效果了
- shizuko: pia felixonmars
- felixonmars: 呜呜呜
- felixonmars: 一来就被 pia 了...
- shizuko: 首先来看一下,最外面的 addEventListener 是添加事件处理程序
- shizuko: 上次说过,事件处理程序是异步消息处理的一种方式
- shizuko: 每次点击元素,都会激发一个事件,然后处理的函数就会被调用
- shizuko: 关于事件具体的机制暂时就不深入了,不过,暂时可以认为,点击的元素,以及元素的父元素,一直到文档根元素,以及文档本身,都能收到这个事件好了
- shizuko: 比如点击 img 的时候, img, .image-wrapper, body, html 和 document 都能收到 "click" 事件
- StayMaverick: 还有 window。
- shizuko: 嗯……还有 window
- shizuko: 这里 body 和 html 标签因为 jsfiddle 的关系省略了,不过元素还在那里,只不过 jsfiddle 自动加上去了而已
- shizuko: document 是整个文档的对象,按照结构来说,比 html 元素更上一层,包括根元素,顶层注释和 dtd 等
- shizuko: window 则是显示文档的窗口……可以暂时认为是浏览器的一个标签页,或者一个 frame 吧……
- shizuko: 今天主要是想说关于 DOM 的事情,不过时间有限,所以不能深入太多了
- shizuko: 讲事件机制大概需要好久好久的
- shizuko: 接下去, document.querySelector(".output") 选择 .output 选择器命中的元素
- shizuko: 大致 .output 就是和 CSS 语法中的选择器类似,选中所有 class="output" 的元素
- shizuko: 不过要注意 class 是一个列表,一个元素可以有多个 class (<a class="A B C D"></a>)
- shizuko: 这些看过 CSS 就会知道了……
- shizuko: 嘛, .querySelector 选择的是一个命中的元素,如果有多个会取其中一个
- shizuko: 还有一个 .querySelectorAll 返回所有命中的元素,返回类型类似一个数组
- shizuko: 不过不是数组……坑之一?
- StayMaverick: HTMLCollection
- shizuko: 之前的 Array.prototype.slice.call(xxx) 可以认为是把 xxx 转换成数组的一种方式吧
- shizuko: 虽然看起来是坑了一些……
- shizuko: 不过用来处理 HTMLCollection 还算比较合适
- StayMaverick: 伪数组嘛,还是比较常见的。
- shizuko: 不过那样一来再套一层……就会很长很长了……
- shizuko: 所以 DOM 还是写起来太繁琐了
- StayMaverick: 据说 Hamony 有个 Array.from(),不过没见过实现。
- shizuko: .textContent 是设置文字内容的属性
- shizuko: 而 .tagName 是获取元素的标签名
- shizuko: 返回的结果都是大写,不知道出于什么考虑
- CnSiC: 历史吧,以前都是大写的
- StayMaverick: IE 要求所有 HTML 标签大写。
- StayMaverick: W3C 要求小写。
- shizuko: 谢谢各位前辈
- shizuko: 这里 e.target 是事件 e 的…… target? (中文怎么说?)
- felixonmars: 目标(
- StayMaverick: 目标
- shizuko: 嗯……目标……
- StayMaverick: 触发该事件的位置。
- shizuko: 总之 click 事件的场合,是实际点击的元素,也就是最下层的元素吧
- shizuko: 具体实现还是与DOM事件模型有关,所以……不多说了
- StayMaverick: W3C 对 DOM 事件机制的文档里有张图,还是比较直观的。
- shizuko: 一个典型的 DOM 编程就是这样了。响应某个 DOM 事件,然后再对文档做一些变换来显示处理结果
- shizuko: 类似的过程也可以用到处理 Modify 按钮上
- shizuko: 首先用 document.querySelectorAll(".modify-score") 选择所有的按钮
- shizuko: 不过然后……就会发现……不支持 forEach 方法……
- shizuko: 这就是个坑啊……
- StayMaverick: HTMLCollection
- StayMaverick: 话说好好的 jQuery 干嘛不用啊……
- shizuko: 总而言之,这次先坑一次好了
- shizuko: Array.prototype.slice.call(document.querySelectorAll(".modify-score"))
- shizuko: 然后,变成这样: http://jsfiddle.net/Nb7rG/1/
- MeowBot: [ Edit fiddle - JSFiddle ] - jsfiddle.net
- shizuko: 按一下按钮,对应的成绩变成 100
- shizuko: 这样大家就都很开心了
- shizuko: 所以注意到 button.addEventListener 是在 button 对象上添加事件处理
- shizuko: 嗯,就是这样了……
- shizuko: 总结一下 DOM 吧……
- shizuko: DOM 全称是 Document Object Model ,文档对象模型
- shizuko: 用于操作 XML 或者 HTML 这样的文档类型
- shizuko: 特点是用对象来表示文档,用属性来反映元素的特点
- shizuko: 然后事件来传递用户交互等
- shizuko: 适合于 JS 等语言……
- CnSiC: <!-- Array.prototype.forEach.call(buttons, function (button) { }); -->
- shizuko: 重点是……这里是不打算讲 DOM 或者 jQuery 的每一个属性或者使用的方法的
- StayMaverick: W3C 好像也给 Java 定义了接口。
- StayMaverick: JDK 里面有 org.w3 的包。
- StayMaverick: org.w3c
- shizuko: 嗯……大家明白吗?如果按照 DOM 一个个属性或者函数讲过去,又要花很久很久……
- shizuko: 所以说,不打算讲这些细节了
- shizuko: 大家用到的时候,自己去查一下就好了。什么操作元素的方法, MDN 上都有
- shizuko: 包括设置属性,添加删除什么的
- shizuko: 今天的计划是想让大家实际感受一下浏览器端编程的这种感觉啦
- shizuko: 然后,弄清一些基本概念,对这些有一些认识就好了
- shizuko: 另外,有些人如果没有学过 CSS 或者甚至学过 HTML ,听不懂 DOM 也是正常的
- shizuko: 这个只能说,个人认为这种事情是没有捷径的
- shizuko: 还是把那些学了最好……
- shizuko: 当然 G+ 上也有前辈说 JS 拿到就能写
- shizuko: 一开始就用 jQuery + Bootstrap ,很快就能写出东西来
- shizuko: 那个也是一种实用主义的说法吧……
- shizuko: 不过对于 DOM 来说,最重要的还是理解文档树、事件模型之类的概念
- shizuko: 等明白这些以后,原生 DOM 也好 jQuery 也好,只不过都是语法或者便利工具而已
- AprocySanae: .....我好像连jquery都不会……
- shizuko: 背后的文档树和事件模型,都是一样的
- shizuko: 个人是比较喜欢 jQuery 啦,因为简洁
- StayMaverick: 最·重要的是不怎么坑。
- shizuko: 但是原生的 DOM 在原生的环境下也确实很好用了啦,避免了依赖之类的问题
- shizuko: 这个说到底,还是一个可以选择的事情而已。
- shizuko: 大家学 JS ,一开始的目标是什么呢?
- shizuko: 如果说是为了编程入门,那么现在已经入门了。应该是开始做东西的时候了,应该选择一个更长远的目标
- shizuko: 如果是 NodeJS 方向的话,很遗憾目前暂时没有太多精力涉及了啦
- shizuko: 不过之后,还会有机会再组织讨论的
- shizuko: 上次凤凰菊苣也讲过 express 的快速建立服务器教程什么的
- shizuko: 网页方向选择是很多啦,不过其实,也不外乎是网站、浏览器扩展、网页应用、图形与游戏之类的
- shizuko: 曾经有人说过网页能做很多事情,甚至有人说,能用JS实现的,必然都会用 JS 实现
- shizuko: 各位前辈也就不多说了……很多已经是很有经验了,甚至已经有所成就了
- shizuko: 不过和静琴一起走了这么远的大家呢?大家的目标是什么?为什么,会来到这个讨论组?
- shizuko: 最好还是仔细想想前进的目标吧,也许就会有自己去学习的动力了
- shizuko: 已经说过不止一次了,这里不是免费培训班,更多的只是指一个方向,解答一些疑惑
- shizuko: 真正重要的还是,自己想要做什么。
- loorson: 浏览器扩展需要哪些知识呢
- shizuko: 嗯很好。浏览器扩展的方向,需要哪些知识很大程度上取决于想要做什么
- shizuko: 想要做偏向于底层或者系统的话,推荐有 C/C++ 等可以编写底层代码的经验
- shizuko: 想要修改网页行为,需要扎实的 DOM 基础
- shizuko: 想要做应用的话,也需要自己做 HTML/CSS
- shizuko: 比如大家都知道静琴写了一些修改G+行为的脚本
- shizuko: 那个就很多用到 DOM ,尤其是事件之类的
- shizuko: 嗯,那些和 C/C++ 无关的
- shizuko: 说了这么久了……大概3/4次了吧?
- shizuko: 大家究竟有没有想过目标是什么?还是只是跟着这里玩而已?
- shizuko: 不听觉得对不起自己,听了觉得学不到东西,那样最无聊了。
- shizuko: 至于缺席讨论的问题。缺席讨论并不是跟不上进度的借口
- shizuko: 真的有目标的话,看着讨论记录自学就能补上
- shizuko: 有卡住的地方,随时都可以问
- shizuko: 为什么就觉得不行了呢?
- shizuko: 其实根本还在于没有动力去自学而已……
- shizuko: 嘛,抱歉说了这么多无关的
- shizuko: 接下去继续介绍其他的方向吧
- shizuko: 刚才讲过了 DOM 的基本用法
- shizuko: 接下去想说一下关于 WebGL 之类的
- shizuko: WebGL 或者 Canvas 能做图像处理,可以用来做图形,也可以用来做游戏
- shizuko: 结合摄像头还能做增强现实什么的
- shizuko: 大家都知道的吧……总之就是可以做很多东西
- shizuko: 这里有没有人想要做游戏的呢?举一下手可以吗?
- AprocySanae: ACTION 举手
- shizuko: WebGL 的话,常用的库有 threejs
- shizuko: 这里能看到一些示例: http://threejs.org/examples/#webgl_animation_cloth
- MeowBot: [ three.js - examples ] - threejs.org
- shizuko: 其他网站上也有其他的 WebGL 示例,有一些游戏设计之类的
- shizuko: 上次看到过乒乓球的游戏,大概
- shizuko: 3D做得还可以啦
- shizuko: 要做这方面,数学基础要有一些的……
- shizuko: 另外,最好自学计算机图形学相关
- shizuko: JS 只是一门语言而已,只是和绘图系统打交道的一种方式……
- shizuko: 所需要的 API 都能查到,并没有什么难点
- iami: 依然要掌握类似矩阵变换,射影,精灵和资源这些基本概念是吧
- shizuko: 不过,图形对于优化要求很高,所以推荐学习算法,并且在此基础上再学习 JS 特定的优化
- shizuko: iami: 正是如此
- iami: 谢谢。
- shizuko: JS 效率可以很高,也可以很低,取决于写的方式
- shizuko: 甚至一个简单的语句不慎就会效率下降几个台阶
- shizuko: 这类事情多次发生在 three.js 库中
- shizuko: 所以,语言特定的优化也需要学习
- shizuko: 网站的话,要注意前台和后台的交互
- shizuko: 有些是后台生成HTML,有些是前台生成
- shizuko: 现代的很多网站到处使用 AJAX ,实现动态加载数据或者内容
- shizuko: G+ 之类的网站,多处用到动态设计。访问 G+ 上每一个贴子、每一个人的页面,甚至不需要整个网页的切换或者刷新
- shizuko: 大致就是 AJAX 取得数据,然后用 DOM 生成页面而已
- shizuko: 不过,不可能全部都是 DOM 吧……应该用到了很多模版才对
- StayMaverick: AJAX 最好的例子应该是地图。
- shizuko: 这种网站并不难做,学习一段时间就行了……
- iamhippo: 嗯嗯,刚从G+过来,让我从头阅读一遍哈 ;D
- shizuko: 需要掌握的是 AJAX ,模版语言,前台 MV* 什么的
- shizuko: 当然 DOM 事件也必不可少啦
- shizuko: 最近的 HTML5 让我们能做更多事情
- shizuko: 浏览器开始支持很多很多新的特性,利用这些可以做很多事情
- shizuko: 可以说进一步扩展了浏览器的能力吧
- StayMaverick: 有人认为浏览器已经不下于一个操作系统了。
- shizuko: 一些特性,比如JS的文件操作、地理位置、摄像头,都能做出很好的应用
- shizuko: 另一些特性可以通过浏览器扩展来实现
- shizuko: 所以,用 JS 做一些原先本地应用才能做的事情已经不是什么难事了
- shizuko: 比如说,可以用 JS 做压缩软件
- shizuko: 用文件 API 和拖动 API 获取要压缩的文件,用 JS 压缩过以后再下载下来
- shizuko: 甚至不需要服务器
- shizuko: 这只是举个例子而已。更多更好玩的事情,请参考 html5rocks 等资源
- shizuko: 这个,也可以成为一个方向
- iamhippo: 其实一门语言能做的事情并不是语音本身限制的
- iamhippo: 而是运行它的平台和环境所决定
- iamhippo: 浏览器运行js那么当然只能做一些浏览器给予的事情啦
- shizuko: 接下来的时间里,是提问时间。静琴比较希望看到“我选择某个方向,请问具体需要学什么”,或者“这两个方向哪个更适合我”之类的问题啦
- shizuko: 就算没有问题的话,也请每个人再确定一下自己的方向吧
- shizuko: 然后,希望每个人能够在这里说出来
- shizuko: 那么,开始提问或者讨论吧?
- iamhippo: 换一个角度,如果是用户级的程序来运行js,比如node.js,那么就可以做普通用户级程序能做的事情。再者如果是由系统权限级别的环境运行,就可以做系统级的事情(不好意思,我插一句话)
- AprocySanae: AS只是想折腾些新鲜玩意玩而已
- shizuko: iamhippo: 谢谢前辈。
- shizuko: AprocySanae: 欢迎折腾 HTML5 ,很好玩的
- AprocySanae: 恩,是呐是吶
- shizuko: StarBrilliant: 前辈是之前有JS经验的?
- StayMaverick: 借助 node.js 学习 TCP 和 Socket, 深入了解 Web。
- shizuko: StayMaverick: 前辈看上去之前就了解了很多的样子吧……
- StayMaverick: 只是看的文档比较多而已。
- shizuko: 静琴自己来说的话,比较倾向于浏览器扩展,改变网页行为那种的
- shizuko: 不过也很想做 G+ 那种交互很多的网站啦
- shizuko: 不过那样就需要在浏览器这边做很多很多的事情,所以很复杂。现在仍然在学习中
- shizuko: iami: 前辈是想要做 WebGL?
- shizuko: 打个小广告,大家可以看看静琴的 G+ 小脚本系列
- loorson: 油猴脚本就是 js写的是吧,做起来应该不难吧
- StayMaverick: 嗯。
- shizuko: loorson: 静琴写的就是那种的。做起来并不难,不过要在学习 DOM 的基础上,拿起武器和原网页战斗
- saifu: hello world !
- StayMaverick: 除了浏览器兼容性之外就不难了。
- shizuko: saifu: Error: User "world" not found
- StayMaverick: UserScripts.org: Because it's YOUR web.
- shizuko: StarBrilliant: 也来说句话吧
- shizuko: pia felixonmars
- shizuko: 另外还有好多人在潜水……你们是真的来讨论的吗?还是只是挂着 IRC 在做别的事情……
- felixonmars: 555
- shizuko: 另外,大家对之前的 JS 入门掌握得怎么样?还有没有什么没有弄懂的地方呢?
- saifu: 不知道说什么...
- iami: 只是有写过游戏的经验而已。WebGL和OpenGL相似么(趴
- shizuko: saifu: 有什么想要学的吗?
- shizuko: iami: 还算类似吧
- iami: 这样……
- shizuko: 顺便……这边有没有人其实是想弄个一技之长然后混口饭吃的?
- saifu: 第一次来..打算学点游戏方面的js,因为很多游戏引擎都用脚本
- shizuko: saifu: 是学游戏引擎脚本啊……程序内嵌入的那种 JS?
- felixonmars: 那个, 首先要熟悉那个游戏引擎吧...
- shizuko: 想混口饭吃的话,感觉 nodejs 或者网页方向比较容易吃上饭
- StayMaverick: Fiddler 就可以用 JS写过滤器,但是没用过……
- saifu: 恩..
- shizuko: 学 HTML5 的话,整天边喝西北风边做 IE6 兼容……(
- saifu: web方面以前做设计的时候偶尔去copy,没有具体学过
- shizuko: 浏览器扩展的话,整天都在忙着刷新捐赠页面,看看有没有新的捐款
- shizuko: 然后每周拍一张自己和家人的照片,表示如果你们不捐款,家人就要饿死了
- shizuko: 做网页的话,天天用12种不同浏览器的不同版本调试兼容性
- shizuko: 深夜12点被电话吵醒,老板开始骂为什么某个页面 IE6 打开不兼容(
- loorson: 好像都挺惨的
- shizuko: 等这些做完了以后,又会有人来问为什么XX浏览器自己山寨的兼容模式不能支持(
- shizuko: NodeJS 就是今天回调,明天回调,天天回调
- shizuko: 服务器崩了是正常的,写个脚本重启就行(
- AprocySanae: 做后端的话,天天被产品围着提需求,半夜手机一响立刻开机远程修复,QA天天抓小辫子(我就补充一下
- shizuko: 顺便永远堵不住的内存泄漏(
- iamhippo: 撸主还是换换岗位,做后端吧
- AprocySanae: ……内存泄露其实还好
- iamhippo: ps:撸主是gg还是mm?
- iamhippo: mm还是别折腾前端了,对皮肤不好
- shizuko: 所以……只有 WebGL 感觉还挺高端的,可惜没几个浏览器支持
- AprocySanae: 后端对皮肤也不好
- shizuko: 以上等下做聊天记录的时候去掉吧……我们还是要给新来者一点信心的
- shizuko: 似乎把各个方向都黑了一遍?
- AprocySanae: 产品大爷没有被黑
- StayMaverick_: WebGL 的支持还好,就是 Opera 12.16 和 Safari 默认不开。
- CnSiC: 掉线狂魔
- shizuko: 嘛,认真点说的话,前端要面对浏览器兼容问题稍微有点头痛
- shizuko: 不过还是很有乐趣的
- saifu: 前端还是挺好的嘛
- shizuko: 所以,大家真的考虑一下吧。学自己喜欢的东西就好,学自己需要的技术就行了……
- shizuko: 不用为了学而学……那样很累的
- shizuko: 总之如果大家想要作业的话,作业就是把这个网页改得能用就好
- shizuko: 主要就是表格部分。要求能添加新的学生、删除学生、修改分数
- shizuko: http://jsfiddle.net/Nb7rG/1/
- MeowBot: [ Edit fiddle - JSFiddle ] - jsfiddle.net
- iami: - - 正在被nodejs的第三方库坑
- shizuko: 其他的 HTML 和 CSS 可以留着自己做实验
- shizuko: 估计需要添加一两个按钮吧……
- StayMaverick_: 嗯,白天刚用<ul>做了个类似的东西。
- shizuko: 然后,输入姓名和分数的话,可以直接用 prompt 输入,也可以用 input 元素,不过后者很难
- shizuko: 不知道怎么输入的话,随机也行
- shizuko: 大家用好事件和 DOM 操作的话,应该很快就能做出来
- shizuko: 必要的话,添加几个 class 。不要总是用 .parentElement 之类的弄
- shizuko: 那么,今天就到这里吧
- AprocySanae: 辛苦了
- shizuko: 其实没什么辛苦的
- shizuko: 根本什么都没讲嘛
- AprocySanae: (寒暄语
- shizuko: .endmeeting
- MeowBot: Can't do that, start meeting first
- shizuko: pia felixonmars
- loorson: 辛苦了
- StayMaverick_: Bot 酱掉过线了。
- shizuko: 做出来就把链接发到环聊吧
- shizuko: 然后对于方向或者之后的学习之类的有什么想法就在环聊谈吧?
- shizuko: 提问随时欢迎的
- shizuko: 在不适合群聊的时间段,私聊也是可以的
- AprocySanae: 恩,大家再见(下班
- saifu: 话说这里GAE都进不来呢,ss才行
- shizuko: saifu: 应该封了 GAE 的
- felixonmars: 呜呜, 抱歉
- saifu: 额 , 那大家晚安
- felixonmars: 机器猫之前被玩坏了
- shizuko: saifu: 晚安吧
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement