我知道在同一页面类似链接到一个部分:如何链接到与jQuery和PHP在同一页中的特定部分?
<a href='#A'>A</a>
<a name='A'>Here is A</a>
但是,当我用jQuery和PHP设计的,我有一个问题。我的设计如下: 有所有字母表。在信件下面,有divs(item_A,item_B,item_c等)。例如,当用户点击K字母时,页面将链接到#K div,同时#K div显示其内容(因为当网站首先打开时,项目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();
});
});