最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript使用focus()設(shè)置焦點失敗的解決方法

 更新時間:2014年09月03日 15:30:30   投稿:whsnow  
這篇文章主要介紹了JavaScript使用focus()設(shè)置焦點失敗的一個解決方法 ,需要的朋友可以參考下

昨天修改機頂盒上面的EPG頁面,遇到一個小問題。用戶購買游戲時需要彈出購買確認對話框,對話框的默認焦點規(guī)定必須停留在“取消”按鍵上。很簡單的需求,使用JavaScript的focus()方法就可以實現(xiàn)了。簡單的代碼示例如下:

document.getElementById("cancel").focus()

但是苦逼的是,機頂盒真是一個大坑。由于要兼容所有現(xiàn)存的機頂盒型號,需要對8款機頂盒進行適配。然后就出現(xiàn)問題了!一款中興B600的機頂盒完全沒法將焦點設(shè)置到取消按鍵上。以下是我的解決思路:

首先確認該機頂盒是否支持getElementById()方法以及是否成功獲得了ID為“cancel”的元素:測試方法很簡單,直接另寫了一個 <p id="test">test</p> ,然后在同樣的地方獲取ID為“test”的元素,并進行了簡單的操作document.getElementById("test").innerHTML="Hello"
最后使用了“try...catch(e)...”捕捉“focus()”失敗的原因

try(){ 
<span style="white-space:pre"> </span>document.getElementById("cancel").focus() 
}catch(e){ 
<span style="white-space:pre"> </span>alert(e.name + ": " + e.what()); 
}

但是就是很奇怪!以上兩步的結(jié)果表明該機頂盒支持focus()和getElementById(),但是就是無法設(shè)置焦點到彈出的對話框中。

前前后后折騰了一個多小時,最后大BOSS出現(xiàn)了,就簡單說了一句話就解決了這個問題!有可能要主動調(diào)用flur()將原來的焦點取消掉!

document.getElementById("purchase").flur()

然后就解決了這個問題。不得不感概!在解決這個問題的過程中,自己的思路其實還是蠻正確的,但知識面顯然不夠。一般程序員和高級程序員的差距除了解決問題的思路方面,也有經(jīng)驗和知識面的差距!

相關(guān)文章

最新評論

衢州市| 江津市| 萨嘎县| 神池县| 香港 | 蒙自县| 天津市| 红河县| 股票| 十堰市| 饶阳县| 南召县| 富源县| 新晃| 中西区| 秭归县| 咸丰县| 天全县| 青神县| 黄陵县| 布尔津县| 株洲市| 开平市| 玉山县| 乾安县| 灵石县| 普定县| 四川省| 德阳市| 怀宁县| 柯坪县| 昌都县| 尉氏县| 洛浦县| 永定县| 湟中县| 中山市| 额济纳旗| 离岛区| 邵阳市| 桑日县|