作成中のサイトのサイドバーの 1 つからフライアウト メニューとして使用されるリストがあります。
サイトの背後にある CMS がこのリストをオンザフライで作成するため、javascript を介して最後の<li>
項目を削除しようとしているため、HTML 自体で削除することはできません。
私が持っているコードが IE、Safari、および FireFox では機能するが、Chrome では機能しないという奇妙な状況に遭遇しました。Chrome の場合、コードはリストの最後の 2 つの項目を削除します。
メニュー・一覧:
<div class="SideCategoryListFlyout">
<ul class="sf-menu sf-vertical sf-js-enabled">
<li>
<a class="sf-with-ul" href="http://myurl/clearance/">
Clearance
<span class="sf-sub-indicator"> »</span>
</a>
<ul style="display: none; visibility: hidden;"> </ul>
</li>
<li>
<a class="sf-with-ul" href="http://myurl/Promotions/">
Promotions
<span class="sf-sub-indicator"> »</span>
</a>
<ul style="display: none; visibility: hidden;"> </ul>
</li>
<li>
<a class="sf-with-ul" href="http://myurl/Notebooks/">
Notebooks
<span class="sf-sub-indicator"> »</span>
</a>
<ul style="display: none; visibility: hidden;"> </ul>
</li>
<li> <-- REMOVE
<a class="sf-with-ul" href="http://myurl/REMOVE/"> <-- REMOVE
REMOVE <-- REMOVE
<span class="sf-sub-indicator"> »</span> <-- REMOVE
</a> <-- REMOVE
<ul style="display: none; visibility: hidden;"> </ul> <-- REMOVE
</li> <-- REMOVE
</ul>
</div>
私のJavascript
<script type="text/javascript">
$(window).load(function(){
$('.SideCategoryListFlyout li:last-child').remove();
});
</script>