我在Shopify网站上使用instantClick获取移动设备上的主导航菜单。
我在移动设备上激活InstantClick脚本时遇到问题,以便在点击或悬停时,下拉菜单会被激活。这只是最初加载页面时的问题。一旦页面加载并进行了硬刷新或点击其他页面,这不是问题。我不确定我的代码的哪一部分存在问题。在Chrome上,它的读数为Uncaught RangeError:超出了最大调用堆栈大小。 在K(instantclick.min.js?11695154509883091683:1)
非常感谢任何帮助。
以下是网页:https://www.latexforless.com
以下是我的html上的移动菜单的初始调用:
<a href="#menu" class="mobile_nav dropdown_link" data-dropdown-rel="menu" data-no-instant>
<div>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
<span class="menu_title">{{ 'layout.general.menu' | t }}</span>
</a>
我的索引页末尾使用的脚本:
<script src="{{ 'instantclick.min.js' | asset_url }}" data-no-instant></script>
<script data-no-instant>
function inIframe() {
try {
return window.self !== window.top;
} catch (e) {
return true;
}
}
if (!inIframe()){
InstantClick.on('change', function() {
if (typeof ga == 'function') {
ga('send', 'pageview', location.pathname + location.search);
}
$('head script[src*="shopify"]').each(function() {
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = $(this).attr('src');
$('body').append( script );
});
var facebookAnalytics = $('head .analytics').text();
var script = document.createElement( 'script' );
script.type = 'text/javascript';
script.text = facebookAnalytics;
$('body').append( script );
$('html').removeClass('remodal-is-locked');
});
InstantClick.init();
}
</script>
{% endunless %}
<script>