link 到 'page' 的外部 'page' 实际上是 div 可见的 onclick

External link to a 'page' that is actually a div made visible onclick

我有一个只有几个页面的简单网站,包括 'stockists' 和 'contact'。我认为我通过使用 'onclick="showStockists()" which runs a function that basically just changes the divs' opacity & z-index 将它们制作为在主页加载时隐藏的 div 并在单击相应的菜单项时显示出来是很棘手的。

这一切都有效并且看起来很棒,但是当我意识到我认为我无法从外部 link 这些 'states' 时有点失败,即:向某人发送 link到库存商页面。 有没有办法让 link 例如 mysite.com/stockists 以某种方式在页面加载时 运行 'showStockists()' 函数?还是我在做梦并且以一种非常复杂的方式做到了这一点。

如果有帮助,这就是我的大致方法(实际上,该功能还重新隐藏了侧边菜单,它本身在页面加载时隐藏并通过汉堡包显示,并隐藏联系人 'page' 如果可见):

HTML:

<div class="menuItem" onclick="showStockists(); closeNav();">STOCKISTS</div>

JS:

function showStockists() {
sideMenu.style.visibility = "hidden";
stockists.style.opacity=1;
stockists.style.zIndex=2;
contact.style.opacity=0;
}

您可以使用查询字符串执行此操作:mysite.com/?stockists=1

$( document ).ready(function() {
    var stockists = getParameterByName('stockists');
    if(stockists==1)
       showStockists();
});

function getParameterByName(name, url) {
    if (!url) url = window.location.href;
    name = name.replace(/[\[\]]/g, "\$&");
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, " "));
}