我有一個視頻頁面,其中包含視頻過濾器。如果我點擊一個過濾器(例如「音樂視頻」),網址在每次這樣的事情:如何使用CSS或JavaScript定位這樣的網址?
http://mysite.com/videos/?videofilter=music-videos
不幸的是,不加體類或任何東西在那裏我可以輕鬆地定位它通過做這樣的事情:
body.music-videos { }
有沒有辦法以某種方式使用目標CSS或JavaScript的網址是什麼?
我有一個視頻頁面,其中包含視頻過濾器。如果我點擊一個過濾器(例如「音樂視頻」),網址在每次這樣的事情:如何使用CSS或JavaScript定位這樣的網址?
http://mysite.com/videos/?videofilter=music-videos
不幸的是,不加體類或任何東西在那裏我可以輕鬆地定位它通過做這樣的事情:
body.music-videos { }
有沒有辦法以某種方式使用目標CSS或JavaScript的網址是什麼?
您可以使用Javascript的location.href
來獲取位置,並像使用普通字符串一樣使用它。 但它會更多地建議服務器端身體有一個類。
大概你的網頁加載了那個URL--當你渲染頁面來包含css-detectable的東西時,你不能做些什麼嗎?
我不知道我是否理解你的問題。你是否試圖定位一個帶有href值的鏈接?你應該可以在CSS中使用類似selector [src = URL]的東西來實現。如果你試圖根據URL來定位body標籤,我會在if語句下創建條件腳本,例如if(location.href =='url'){document.getElementsByTagName(「body」)。style.property =「隨你」 } 。希望這可以幫助。
我不知道我的理解......
所以你點擊過濾器選項,它發送一個查詢字符串的URL。我們可以得到查詢字符串,例如:
var qs = [];
var q = window.location.search.substring(1);
var p = q.split('&');
for(var i = 0; i < p.length; i++) {
var pos = p[i].indexOf('=');
if(pos > 0) {
var key = p[i].substring(0, pos);
var val = p[i].substring(pos+1);
qs[key] = val;
}
}
然後你只需訪問qs['videofilter']
來獲取值。從那裏,如果它什麼都不做,那麼 - 你沒有過濾器,你有複選框。有一個過濾器的唯一方法是有某種形式的通用性,將它們全部歸類。如果你想通過javascript和css來做到這一點,你可以在正則表達式中使用該過濾器來查找innerHTML
與上面得到的值匹配的特定標籤,然後確定整個容器的關係(例如,父,祖父母等) ,並將其設置爲display:none;
如果您的意思是別的,請澄清。
這個解決方案是僅Firefox不幸:
從https://developer.mozilla.org/en/CSS/@-moz-document
@-moz-document url(http://www.w3.org/),
url-prefix(http://www.w3.org/Style/),
domain(mozilla.org)
{
/* CSS rules here apply to:
+ The page "http://www.w3.org/".
+ Any page whose URL begins with "http://www.w3.org/Style/"
+ Any page whose URL's host is "mozilla.org" or ends with
".mozilla.org"
*/
/* make the above-mentioned pages really ugly */
body { color: purple; background: yellow; }
}