window.location.href не работает, когда href является той же страницей

У меня есть форма ввода, которая принимает параметры для отчета. Я отправляю их на той же странице. Когда отчет сгенерирован, я хотел бы переместить пользователя в начало отчета. Однако javascript на якорь не идет. Когда мой href является другой, но в остальном идентичной страницей, якорь работает, но когда это та же страница, это не так. Пример:

<script type="text/javascript">
function moveto() {
window.location.href = "frag6.cfm#betty";
}
</script>
</head>
<body>
<script type = "text/javascript">
moveto()
</script>
<cfset subtest = ArrayNew(1)>
<cfloop from = "1" to = "10" index = "m">
<cfloop from = "1" to = "3" index = "i">
<cfloop from = "1" to = "4" index = "j">
<cfset test[i][j] = "#m#_#i#_#j#">
</cfloop>
</cfloop>
</cfloop>

<cfdump var = "#test#">
<cfloop from = "1" to = "3" index = "i">
<cfloop from = "1" to = "4" index = "j">
<cfset subtest[j] = test[i][j]>
</cfloop>

<cfdump var = "#subtest#">
</cfloop>
<a name = "betty"> here I am </a>

person Betty Mock    schedule 01.04.2013    source источник
comment
попробуйте location.href.hash: stackoverflow.com/questions/5694686/javascript -перейти к якорю   -  person Aram Kocharyan    schedule 01.04.2013
comment
попробовал, прежде чем задавать вопрос - у меня не сработало   -  person Betty Mock    schedule 04.04.2013


Ответы (1)


Вы должны использовать атрибут id для якорей вместо имени и location.hash вместо location.href

<div id="happyanchor"></div>

<script>
function goToAnchor(anchor){
    location.hash = anchor;
}

goToAnchor('happyanchor');
</script>
person Aleko    schedule 12.04.2013