2012年8月22日星期三

querySelector查询一个element里面有多个class的情况

通过class来查找元素,我们可以用getElementsByClassName、querySelector或querySelectorAll,不过当一个element包含多个classname的时侯,用getElementsByClassName就很方便,如:

<div class="c1 c2 c3" />

document.getElementsByClassName("c1 c2 c3")


即多个classname用空格隔开就可以。但是querySelector加空格是向下查找,比如

document.querySelectorAll(".c1 .c2 .c3") 是找c1的子元素c2包含的子元素c3。

如果用逗号“,”呢,即

document.querySelectorAll(".c1, .c2, .c3"),这个其实是一种“或”的关系,即“OR”,就是找到包含c1或者c2或者c3的元素。那么怎样才是“AND”的关系呢,其实也很简单:

 document.querySelectorAll(".c1.c2.c3")

没有空格没有逗号就可以啦!

2012年8月13日星期一

Android误按SMSC更新导致发不出短消息

Nexus S不小心在*#*#4636#*#*的手机信息里误按了SMSC的更新按钮,导致发不出短消息,但可以接收。搜索得知需要重新设定短消息中心的号码,各地都不一样,上海移动的为+8613800210500,然后每两位需做下反转:

86 13 80 02 10 50 0
 变成
68 31 08 20 01 05 0
  
根据网上说的最后一位前面补f变成两位,即68 31 08 20 01 05 f0,然后最前面加上0891,最终字串为0891683108200105f0,把这个字串填入SMSC的文本框,点击更新,照理说应该成功了,因为也没提示错误,因为输入不对的话会有update error的提示。返回桌面试着发了条短消息测试,提示发送失败。尝试了记种别的方法后,决定试试不补齐最后一位的f,即字串为08916831082001050,更新后测试成功。