如何在window.location.href中使用动态生成的id?

时间:2016-05-24 07:37:56

标签: javascript jquery window.location

我在js和htm中有以下代码。

with open("my_file.txt") as f:   
    parsing=False  
    for line in f:  
        if line.startswith("# Start"):  
            parsing=True  
        elif line.startswith("# End"):  
            parsing=False  
        if parsing:  
            line_arr = line.split()  
            if len(line_arr) > 1:  
                print line_arr[1]

每当点击一个按钮(div)时,该页面应滚动到div的顶部。

string filePath = file.Replace(path, "");

这似乎不起作用。请告知解决方案。

此问题被标记为div scroll to in javascript的副本,但没有帮助。

6 个答案:

答案 0 :(得分:2)

请按以下方式修改function openDiv()

function openDiv(divID) {
    var myDivID = "#" + divID + "_myDiv";
    window.location.hash = myDivID; //setting the location.hash
}

答案 1 :(得分:1)

试试这个 使用动画

   function openDiv() {
           var myDivID = "#" + divID + "_myDiv";
            $('html, body').animate({ scrollTop: $(myDivID).position().top}, 1000);
        });

答案 2 :(得分:0)

如果您只需要滚动到窗口顶部window.location.href = "#" 会做得很好。

答案 3 :(得分:0)

function popitup(url,windowName) {
       newwindow=window.open(url,windowName,'height=200,width=150');
       if (window.focus) {newwindow.focus()}
       return false;
     }

答案 4 :(得分:0)

“window.location.href”用于更改浏览器的当前网页。 对于您的任务,您可以使用anchor标记元素来显示div部分。就像下面一样,

    <div id="div1_myDiv">This is my div1</div>
    <div id="div2_myDiv">This is my div2</div>
    <div id="div3_myDiv">This is my div3</div>
    ...
    <a id="button1" href="#div1_myDiv">Show div1</a>
    <a id="button2" href="#div2_myDiv">Show div1</a>
    <a id="button3" href="#div3_myDiv">Show div1</a>

答案 5 :(得分:0)

您需要在现有concateURL myDivID。

试试这个解决方案

&#13;
&#13;
function openDiv(divID) {
    //alert(divID);
    var myDivID = "#" + divID + "_myDiv";
    //window.location.hash = myDivID;
    window.location.href=window.location.href.concat('#Id');
    console.log(window.location.href);
}
&#13;
<div id="div1_myDiv">This is my div1</div>
<div id="div2_myDiv">This is my div2</div>
<div id="div3_myDiv">This is my div3</div>
...
<div id="button1" onclick="openDiv('div1')">Show div1</div>
<div id="button2" onclick="openDiv('div2')">Show div2</div>
<div id="button3" onclick="openDiv('div3')">Show div3</div>
&#13;
&#13;
&#13;