Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 基于屏幕大小的偏移量更改_Javascript_Jquery_Html_Css_Offset - Fatal编程技术网

Javascript 基于屏幕大小的偏移量更改

Javascript 基于屏幕大小的偏移量更改,javascript,jquery,html,css,offset,Javascript,Jquery,Html,Css,Offset,我编写了代码,使用以下java脚本将导航到特定部分: 单击以下锚定链接,它将重定向到不同页面的特定部分: <a href="getinvolved/#voluntours" data-toggle="" data-target="" target="" class="button">Voluntours</a> <a href="getinvolved/#dreamcourts" data-toggle="" data-target="" target="" cla

我编写了代码,使用以下java脚本将导航到特定部分:

单击以下锚定链接,它将重定向到不同页面的特定部分:

<a href="getinvolved/#voluntours" data-toggle="" data-target="" target="" class="button">Voluntours</a>
<a href="getinvolved/#dreamcourts" data-toggle="" data-target="" target="" class="button">Dreamcourts</a>
问题是它在开发人员屏幕上运行良好,但当屏幕大小改变时,偏移量的改变和导航将转到错误的区域

甚至在每次页面刷新后,偏移量也会不断变化


请您提供建议,如何解决此问题?

尝试将
250
替换为
$(“#voluntour”).height()
在脚本中它不起作用任何线索?因此您需要为导航块不起作用设置
位置:fixed
…尝试将
250
替换为
$(“#voluntour”).height()
在脚本中,它不工作?因此您需要为导航块不工作设置
位置:fixed
。。。。。。
<div id="voluntours" class="volunteer-days" style="padding-top: 25px;">
    <p>some text1</p>
    <p>some text2</p>
    <p>some text3</p>
    <p>some text4</p>
    <p>some text5</p>
</div>

<div id="dreamcourts" class="volunteer-days" style="padding-top: 25px;">
    <p>some text1</p>
    <p>some text2</p>
    <p>some text3</p>
    <p>some text4</p>
    <p>some text5</p>
</div>
if(window.location.href.indexOf("getinvolved")) {
    if(window.location.href.indexOf("#") > -1) {
        var id = window.location.href.substr(window.location.href.lastIndexOf("#"));
        var ofs = 0;
        if(id.indexOf("voluntour") > -1) {
            ofs = $(id).offset().top;
        } else if(id.indexOf("dreamcourts") > -1) {
            ofs = $(id).offset().top + 250;    
        } else {
            ofs = $(id).offset().top;
        }
    }
    $('body, html').animate({ scrollTop: ofs });
}