我的大腦被卡住了,我不能讓下面的代碼工作。的Javascript搜索過濾器除去頁面元素
什麼我是在一個完整的鏈接網站的頂部的搜索欄,我想篩選出的鏈接,在酒吧的用戶類型。
這裏是網頁的一個片段:
<input type="text" id="resourceSearch" onkeyup="resourceFilter" placeholder="Filter resources by name..">
<div id="resourceTiles" class="resource-tiles">
<a class="resource-tile-container" target="_blank" href="http://hostname/cacti/">
<div class="resource-tile-icon-container">
<img src="/media/tile-icons/analytics.png">
</div>
<div class="resource-tile-title-container">
<p>Cacti Traffic Graphing</p>
</div>
</a>
</div>
<script type="text/javascript" src="scripts/script.js"></script>
和JavaScript我試圖使用方法:
function resourceFilter() {
var input, filter, tiles, tile, resource, i;
input = document.getElementById("resourceSearch");
filter = input.value.toUpperCase();
tiles = document.getElementById("resourceTiles");
tile = tiles.getElementsByTagName("a");
for (i = 0; i < tile.length; i++) {
resource = tile[i].getElementsByTagName("p")[0];
if (resource) {
if (resource.innerHTML.toUpperCase().indexOf(filter) > -1) {
tile[i].style.display = "";
} else {
tile[i].style.display = "none";
}
}
}
}
我是新來的Javascript並試圖重新利用一些代碼我在其他地方找到了,但我不知道如何讓它做到我想要的。
我希望腳本搜索「resourceTiles」div中的所有'a'標籤,並通過添加display:none樣式來刪除'p'標籤中鏈接名稱不匹配的拼貼。
這是接近這一目標的最佳方式是什麼?
小心使用函數內部的全局變量,因爲你可能把事情搞砸在其他地方。閱讀關於在函數內部使用'var'的信息。 – yezzz