如果 URL 哈希以 Javascript 中的单词开头,则隐藏 div
Hide div if URL hash begins with word in Javascript
如果 URL 散列不存在,我如何隐藏以 id "news" 开头但还包含 "news1" "news2" 等数字的 divs包含 "news".
如果 someurl.com/#events
喜欢隐藏。但显示 "news" div 如果 someurl.com/news1
需要在常规 JS 中
谢谢,
如果你把 class 放在你想要应用它的所有 div 上,你可以这样做:
$(document).ready(function() {
$('.CLASSNAME').each(function(i) {
if($(this).val().indexOf('WORD_YOURE_LOOKING_FOR') > -1) {
$(this).css('display', 'none');
}
);
});
您可以像这样访问 URL 中的哈希:
var hash = window.location.hash;
我不是 100% 清楚你当时想做什么。如果您想显示新闻 1 div,您可以这样做:
if(hash == 'news1') {
$('#news1').show();
}
该脚本尚未经过测试。它执行以下步骤:
- 在 URL 中查找“#news”一词。在我们的例子中,如果没有任何单词。
- 每个 div ID 为 "new" 或类似
在这个 div 上加一个 CSS 来隐藏它。
<script type="text/javascript">
$(document).ready(function () {
if(window.location.href.indexOf("#news") < 0) {
$("div[id^='news']").css('display', 'none');
}
});
</script>
试试这个:
var hash = window.location.hash;
$('[id^="'+hash+'"').hide();
试试这个:-
$(function(){
var url = window.location.hash;
if(url.indexOf('news') > -1){
$("div[id^='news']").hide();
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="news1">News1</div><br>
<div id="news2">news2</div><br>
<div id="news3">news3</div><br>
<div id="event">event</div><br>
更新:(使用纯 JavaScript)
(function() {
var url = window.location.hash;
/* for testing set the hash to 'news' */
url='news';
if(url.indexOf('news') > -1){
var bodyDOM = document.body;
bodyDOM.querySelectorAll("[id^='news']").forEach(function(item, index){
item.style.display='none';
});
}
})();
<div id="news1">News1</div><br>
<div id="news2">news2</div><br>
<div id="news3">news3</div><br>
<div id="event">event</div><br>
如果 URL 散列不存在,我如何隐藏以 id "news" 开头但还包含 "news1" "news2" 等数字的 divs包含 "news".
如果 someurl.com/#events
喜欢隐藏。但显示 "news" div 如果 someurl.com/news1
需要在常规 JS 中
谢谢,
如果你把 class 放在你想要应用它的所有 div 上,你可以这样做:
$(document).ready(function() {
$('.CLASSNAME').each(function(i) {
if($(this).val().indexOf('WORD_YOURE_LOOKING_FOR') > -1) {
$(this).css('display', 'none');
}
);
});
您可以像这样访问 URL 中的哈希:
var hash = window.location.hash;
我不是 100% 清楚你当时想做什么。如果您想显示新闻 1 div,您可以这样做:
if(hash == 'news1') {
$('#news1').show();
}
该脚本尚未经过测试。它执行以下步骤:
- 在 URL 中查找“#news”一词。在我们的例子中,如果没有任何单词。
- 每个 div ID 为 "new" 或类似
在这个 div 上加一个 CSS 来隐藏它。
<script type="text/javascript"> $(document).ready(function () { if(window.location.href.indexOf("#news") < 0) { $("div[id^='news']").css('display', 'none'); } }); </script>
试试这个:
var hash = window.location.hash;
$('[id^="'+hash+'"').hide();
试试这个:-
$(function(){
var url = window.location.hash;
if(url.indexOf('news') > -1){
$("div[id^='news']").hide();
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="news1">News1</div><br>
<div id="news2">news2</div><br>
<div id="news3">news3</div><br>
<div id="event">event</div><br>
更新:(使用纯 JavaScript)
(function() {
var url = window.location.hash;
/* for testing set the hash to 'news' */
url='news';
if(url.indexOf('news') > -1){
var bodyDOM = document.body;
bodyDOM.querySelectorAll("[id^='news']").forEach(function(item, index){
item.style.display='none';
});
}
})();
<div id="news1">News1</div><br>
<div id="news2">news2</div><br>
<div id="news3">news3</div><br>
<div id="event">event</div><br>