可以在html中声明Javascript函数变量吗? 对不起,我在这方面只是很新的,以前有C++的经验,问题是可以用JavaScript /HTML.p>

可以在html中声明Javascript函数变量吗? 对不起,我在这方面只是很新的,以前有C++的经验,问题是可以用JavaScript /HTML.p>,javascript,html,variables,Javascript,Html,Variables,我想在JavaScript中创建一个函数,使用图像位置数组替换单击时的图像。是否可以以某种方式在html中声明所需的变量(数组中的位置号)?因此,我不必为每个图像创建单独的函数 在C++中,你做一个函数,然后在括号内声明变量。这里有可能吗?如果没有,是否有任何接近的解决方案 JavaScript: var imgArray = ["images/2.jpg","images/3.jpg"] function newImage() { document.getElementById('pic

我想在JavaScript中创建一个函数,使用图像位置数组替换单击时的图像。是否可以以某种方式在html中声明所需的变量(数组中的位置号)?因此,我不必为每个图像创建单独的函数

在C++中,你做一个函数,然后在括号内声明变量。这里有可能吗?如果没有,是否有任何接近的解决方案

JavaScript:

var imgArray = ["images/2.jpg","images/3.jpg"]

function newImage() {
  document.getElementById('pic').src = imgArray[1];
}
HTML:


海报


是否可以在html“newImage(number)”中插入数字?

您可以从html发送索引编号,并在javascript函数中作为参数接收该编号:

function newImage(index) {
   document.getElementById('pic').src = imgArray[index];
}  

// in the html
<div class="project" id="ba">
     <p onclick="newImage(1)">Poster</p>
</div>
函数newImage(索引){
document.getElementById('pic').src=imgArray[index];
}  
//在html中
海报


您可以从HTML发送索引号,并在javascript函数中将其作为参数接收:

function newImage(index) {
   document.getElementById('pic').src = imgArray[index];
}  

// in the html
<div class="project" id="ba">
     <p onclick="newImage(1)">Poster</p>
</div>
函数newImage(索引){
document.getElementById('pic').src=imgArray[index];
}  
//在html中
海报


如果计划只使用一个
,则可以初始化计数器变量,每次单击“poster”标签时计数器变量都会递增,并将其修改为图像数组的长度。它将循环可用的图像

var imgaray=[“images/2.jpg”,“images/3.jpg”]
var计数器=0;
函数newImage(){
document.getElementById('pic').src=imgArray[counter];
计数器=++计数器%imgArray.length;
}

海报


如果计划只使用一个
,则可以初始化计数器变量,每次单击“poster”标签时计数器变量都会递增,并将其修改为图像数组的长度。它将循环可用的图像

var imgaray=[“images/2.jpg”,“images/3.jpg”]
var计数器=0;
函数newImage(){
document.getElementById('pic').src=imgArray[counter];
计数器=++计数器%imgArray.length;
}

海报


您不能在HTML中真正声明变量。因此,不可能只使用HTML执行类似于
onclick=“newImage(variable);”
的操作。如果您使用的是ASP.NET之类的框架,那么您可以使用Razor执行类似于
onclick=“newImage(@variable);”
的操作。我相信Angular、React等都提供类似的功能

但是,在“普通”设置中,还有其他方法可以实现类似的功能

如果它只是一个静态数字,则可以不带变量地传递它。类似于
onclick=“newImage(3);”

您还可以设置
属性,该属性也可以在JavaScript中访问。类似于海报的东西

然后在JS中:

function newImage(){
   value = document.getElementById("poster").value;
   /* do something with the value */
}

如果您使用的是PHP,还可以通过onclick函数将PHP变量传递给JavaScript,如图所示。如果您正在动态生成HTML(例如,在PHP循环中),并且可能不想硬编码每个值,我建议您使用此方法。

您不能在HTML中真正声明变量。因此,不可能只使用HTML执行类似于
onclick=“newImage(variable);”
的操作。如果您使用的是ASP.NET之类的框架,那么您可以使用Razor执行类似于
onclick=“newImage(@variable);”
的操作。我相信Angular、React等都提供类似的功能

但是,在“普通”设置中,还有其他方法可以实现类似的功能

如果它只是一个静态数字,则可以不带变量地传递它。类似于
onclick=“newImage(3);”

您还可以设置
属性,该属性也可以在JavaScript中访问。类似于海报的东西

然后在JS中:

function newImage(){
   value = document.getElementById("poster").value;
   /* do something with the value */
}

如果您使用的是PHP,还可以通过onclick函数将PHP变量传递给JavaScript,如图所示。如果您正在动态生成HTML(例如,在PHP循环中),并且可能不想硬编码每个值,我建议您使用此方法。

此处使用的语言是Javascript,而不是Java。(他们是完全不同的语言。)我相应地更新了你的问题。谢谢你,哈哈。这是我在这方面的知识水平的一个精彩例证是的,你可以做海报。你在这里使用的语言是Javascript,而不是Java。(他们是完全不同的语言。)我相应地更新了你的问题。谢谢你,哈哈。这是我在这方面知识水平的一个精彩例证是的,你可以做海报,非常感谢!另一个问题:如果我想以同样的方式在图像中添加文字标题,那么最好的解决方案是什么?它应该被编辑吗?还是替换了一些txt文件?或者只是一个简单的数组,所有文本的顺序与图片相同?您可以像您所说的那样进行两个数组,或者使用
alt
属性为图像添加标题。最好的方法是使用一些框架将html与模型绑定,并处理javascript函数中的逻辑。绑定数据提供了更多的控制和可能性。至少,您可以使用jQuery。非常感谢!另一个问题:如果我想以同样的方式在图像中添加文字标题,那么最好的解决方案是什么?它应该被编辑吗?还是替换了一些txt文件?或者只是一个简单的数组,所有文本的顺序与图片相同?您可以像您所说的那样进行两个数组,或者使用
alt
属性为图像添加标题。最好的方法是使用一些框架将html与模型绑定,并处理javascript函数中的逻辑。绑定数据提供了m