我知道要链接到同一页面中的某个部分,例如:
<a href='#A'>A</a>
<a name='A'>Here is A</a>
但是当我用 jquery 和 php 设计它时,我遇到了问题。我的设计是这样的:所有字母都是字母。在字母下,有 div(item_A、item_B、item_c 等...)。例如当用户点击K字母时,页面会链接到#K div,并且#K div也会显示其内容。(因为当网站第一次打开时,item div的显示是无的)。但问题是,虽然#K(K只是示例)K显示了它的内容,但页面并没有重定向到#K div。您必须自己滚动。
这是代码:
<div class="content_letters">
<ul>
<?php $array_letter = array("A","B","C","Ç","D","E","F","G","H","I","İ",
"J","K","L","M","N","O","P","R","S","Ş","T",
"U","Ü","V","Y","Z");
for ($i=0;$i<27;$i++) {
echo "<li><a id='letter_{$array_letter[$i]}'
href='#letter_{$array_letter[$i]}'>{$array_letter[$i]} | </a></li>";
}
?>
</ul>
</div>
<?php
for ($i=0;$i<27;$i++) {
?>
<div class="content_letter_block">
<div class="text">
<div class="show_hide">
<a class="button" id="
<?php echo 'button_letter_'.$array_letter[$i]; ?>">SHOW/HIDE</a>
</div>
<a name="<?php echo "letter_".$array_letter[$i].'">';?>
<?php echo $array_letter[$i]; ?></a> starts from here</div>
</div>
</div>
<?php } ?>
<div style='display:none' id='<?php echo "item_".$array_letter[$i];?>'>
Here is item...
</div>
这是jquery代码:
$(document).ready(function() {
// target everything with IDs that start with 'button_letter'
$("[id^='button_letter']").click(function () {
// split the letter out of the ID
// of the clicked element and use it to target
// the correct div
$("#item_" + this.id.split("_")[1]).toggle();
});
$("[id^='letter']").click(function () {
$("#item_" + this.id.split("_")[1]).show();
});
});