jQuery對我來說很難理解。每次我必須使用它時,我最終都會在幾個小時內閱讀文檔以達到目的。我正在使用此代碼(實時編輯可用)。更改jQuery中的if語句
http://codepen.io/anon/pen/vKFBy
它過濾實時記錄,而在輸入文本tyiping。問題是我不想要它的搜索方法。讓我解釋。
<ul id="list">
<li class="in"><span>google.com</span></li>
<li class="in"><span>gmail.com</span></li>
<li class="in"><span>samsung.com</span></li>
<li class="in"><span>amazon.de</span></li>
<li class="in"><span>apple.de</span></li>
</ul>
當我鍵入「G」或「G」(這是不區分大小寫)amazon.de和apple.de消失,因爲它們不包含任何「G」同時google.com gmail.com和三星。 com仍然可見。這就是問題。我不想保留三星g .com只是因爲它在某個時候它有一個「g」。我想只返回範圍爲開始與某個字符串的元素。實際上,這是我試圖重現的。
我鍵入 「G」:
<ul id="list">
<li class="in"><span>google.com</span></li>
<li class="in"><span>gmail.com</span></li>
<li class="hiding out hidden"><span>samsung.com</span></li>
<li class="hiding out hidden"><span>amazon.de</span></li>
<li class="hiding out hidden"><span>apple.de</span></li>
</ul>
我繼續鍵入 「轉到」:
<ul id="list">
<li class="in"><span>google.com</span></li>
<li class="hiding out hidden"><span>gmail.com</span></li>
<li class="hiding out hidden"><span>samsung.com</span></li>
<li class="hiding out hidden"><span>amazon.de</span></li>
<li class="hiding out hidden"><span>apple.de</span></li>
</ul>
我知道,我應該使用的語法:
indexOf(searchTerm)
或者:
[span^="'+searchTerm+'"]
或者:
str.match(/^searchTerm/)
但我不能管理編輯if語句的電流。每次我打破腳本。
Side-note:你已經在'keyup'處理程序中嵌套了':containsi' jQuery擴展!最好你重新格式化你的代碼,並看看在一些緊迫性嵌套:) – 2014-10-16 15:56:11
嗨,謝謝你的答覆。你爲什麼這麼說?你的意思是這可能是一個表演的問題? – user1274113 2014-10-16 17:03:12
當只需要初始化一次時,您不應該不必要地反覆運行代碼。我擔心你可能有其他類似的問題。最好避免這種情況。 – 2014-10-16 17:04:35