0

我是 HTML 和 Javascript 的新手。请有人可以帮助我解决以下问题。以下代码将在页面加载后正常显示 579。但是,我需要它在不刷新整个页面的情况下显示不同的数字。例如,如果触发了鼠标点击等事件,则会显示 795(图像)。我该怎么做才能使图像中的新数字显示在与以前相同的位置。非常感谢。

` DisplayNumImg(5,7,9);

<a href="#" onclick="DisplayNumImgChanged(7,9,5)" /a>



#child2-3
{
 position: absolute;
 width: 165px;
 height: 15px;
 left: 5px;
 top: 40px;
}

.thumb_child1
{
  float:right;
  margin:0px;
}


function DisplayNumImg( a, b, c)
{

  var s;

  if ( a == 5 ) {
     s = '<img class="thumb_child1" src="./images/5_blu.png"> ';
     document.write( s );
  }

  if ( a == 7 ) {
     s = '<img class="thumb_child1" src="./images/7_blu.png"> ';
     document.write( s );
  }

  if ( a == 9) {
     s = '<img class="thumb_child1" src="./images/9_blu.png"> ';
     document.write( s );
  }
}

function DisplayNumImgChanged( a,b,c )
{
   // please help me with code here or something that you think it would work. Thanks.
}

`

4

3 回答 3

0

如果我理解你在做什么,这样的事情可能会起作用:

function DisplayNumImgChanged( a,b,c )
{
   var valueArray = [a, b, c];
   var imgElems = document.getElementsByClassName('thumb_child1');
   for (var i = 0 ; i < imgElems.length ; i++) {
       imgElems[i].src = './images/' +valueArray[i]+ '_blu.png';
   }
}
于 2012-06-14T21:56:36.617 回答
0

好的,首先:我强烈建议你应该学习和使用 jQuery(然后,一旦你学会了,如果你仍然想提高开发人员的能力,回去学习它的工作原理,了解它的 Javascript 代码) . 它会让你的事情变得更容易。

在这种情况下,听起来您正在尝试做的是更新图像元素上的 src 属性。使用 jQuery,可以按如下方式完成:

$('.thumb_child1').attr('src', './images/9_blu.png');

在原始 JS 中,这将类似于:

var thumbs = document.getElementsByTagAndClassName(null, 'thumb_child1');
for (var i = 0; i < thumbs.length; i++) {
    thumbs[i].src = './images/9_blu.png';
}

(虽然上面的代码是未经测试的,所以如果你有问题请回帖。)

于 2012-06-14T21:50:11.090 回答
0
  1. 不要使用 document.write (永远!)
  2. 将css放在样式标签中
  3. 将javascript放在脚本标签中
  4. 只在stackoverflow上发布实际代码(该代码永远不会工作)
于 2012-06-14T21:48:03.967 回答