我在将动态 id 插入到 JavaScript 代码中时遇到问题:
$('#scroll-up1, #scroll-down1').bind({ ..............
在这个例子中,我需要函数来获取我通过函数发送的 id 值
$('#scroll-up+id, #scroll-down+id').bind({ ..............
问题是引号作为“或'对我不起作用,我不能使用正确的函数工作正常,这个脚本让我可以滚动文本但唯一的问题是因为不允许我直接从函数的 id 发送值.
为我编辑以放置所有代码:.....
PHP AND HTML CODE
<?php
$fil_comments=file("comments.txt");
for ($i=0;$i<sizeof($fil_comments);$i++)
{
$line=explode("~",$fil_comments[$i]);
if ($i%2==0)
{
$back=1;
}
else
{
$back=2;
}
?>
<li>
<div id="web_comment_<?php echo $back?>">
<div id="web_comment_name"><?php echo $line[0];?></div>
<div class="web_comment_texto" id="scroll<?php echo $i;?>"><?php echo $line[1];?></div>
<div class="web_comment_arrow" style="margin-left:260px;" id="scroll-down<?php echo $i;?>"><img src="imagenes/comments/arrow_up.png"></div>
<div class="web_comment_arrow" style="margin-left:288px;" id="scroll-up<?php echo $i;?>"><img src="imagenes/comments/arrow_down.png"></div>
</div>
</li>
<script>
scroll_diver(<?php echo $i;?>);
</script>
<?
}
?>
JAVASCRIPT代码的功能
<script type="text/javascript">
function scroll_diver(id)
{
$(function() {
var ele = $('#scroll'+id);
var speed = 30, scroll = 5, scrolling;
$('#scroll-up'+id).mouseenter(function() {
// Scroll the element up
scrolling = window.setInterval(function() {
ele.scrollTop( ele.scrollTop() - scroll );
}, speed);
});
$('#scroll-down'+id).mouseenter(function() {
// Scroll the element down
scrolling = window.setInterval(function() {
ele.scrollTop( ele.scrollTop() + scroll );
}, speed);
});
//var a='#scroll-up'+id;
//var b='#scroll-down'+id;
var a='#scroll-up'+id;
var b='#scroll-down'+id;
//$('a,b').bind({
//$('#scroll-up1, #scroll-down1').bind({
//$('#scroll-up'+id+',#scroll-down'+id)
/// 这里的问题!!!
$('#scroll-up'+id+', #scroll-down '+id).bind({
click: function(e) {
// Prevent the default click action
e.preventDefault();
},
mouseleave: function() {
if (scrolling) {
window.clearInterval(scrolling);
scrolling = false;
}
}
});
});
}
</script>
基本上问题出在用于发送 id 的 JavaScript 函数行中,如果您看到 PHP 代码,我使用 bucle 来创建带有信息的滚动提示,并且每个我都可以滚动他的内容,为此我将函数调用到 bucle和:
<script>
scroll_diver(<?php echo $i;?>);
</script>
但是在这一行中,没有发送正确的工作信息,如果我将 bucle 用于一个特定的 id,工作正常,这个工作正常,但上下滚动非常快,并且控件没有正常工作。