Javascript 如何在鼠标上方显示图像名称?
我有两个数组,一个图像数组和一个价格数组。 我有图像显示,但我想显示价格,目前我在图像名称中持有的价格,当我将鼠标移到图像上时,是否可能 HTMLJavascript 如何在鼠标上方显示图像名称?,javascript,html,Javascript,Html,我有两个数组,一个图像数组和一个价格数组。 我有图像显示,但我想显示价格,目前我在图像名称中持有的价格,当我将鼠标移到图像上时,是否可能 HTML getImage(); 我建议为每张照片创建一个容器div,并在每个容器中添加您的和,就像另一个包含价格的div一样。首先使用display:none或其他设置price divs hidden,然后在javascript中添加一些侦听器来显示和隐藏它: for (var i=0; i < imageArray.length; ++i)
getImage();
我建议为每张照片创建一个容器div,并在每个容器中添加您的和,就像另一个包含价格的div一样。首先使用display:none或其他设置price divs hidden,然后在javascript中添加一些侦听器来显示和隐藏它:
for (var i=0; i < imageArray.length; ++i) {
var img = new Image();
img.src = imageArray[i];
img.className = "product_details";
var container = document.createElement("div");
var price = document.createElement("div");
price.innerHTML = priceArray[i];
//Style your price and image elements so they fit in the container and the price is displayed over the image etc
container.appendChild(price);
container.appendChild(img);
container.onmouseover = function() {
container.getElementByClass("price").style.display = "block";
};
container.onmouseout = function() {
container.getElementByClass("price").style.display = "none";
};
}
for(变量i=0;i
如果显示price div会弄糟,您可能需要稍微处理onmouseover/out事件,即在z索引最高的层上调用onmouseover,而不是在容器上调用onmouseover,我还没有尝试过,但这应该会给您一个大致的想法这里的工作示例:
HTML
JS
var-imageArray=new-Array();
imageArray[0]=“images/coffee_prod_1.png”;
imageArray[1]=“images/coffee_prod_2.png”;
imageArray[2]=“images/coffee_prod_3.png”;
imageArray[3]=“images/coffee_prod_4.png”;
imageArray[4]=“images/coffee_prod_5.png”;
imageArray[5]=“images/coffee_prod_6.png”;
imageArray[6]=“images/coffee_prod_7.png”;
//产品价格表
var价格数组=[“11.90欧元”、“12.90欧元”、“13.90欧元”、“14.90欧元”、“15.90欧元”、“16.90欧元”、“17.90欧元];
函数getImage(){
var container=document.getElementById(“照片”);
对于(变量i=0;i
您是否尝试过img.title属性?设置图像标题是否有效?img.title=priceArray[i]还是你想要更别致的东西?是的,你反对将价格存储在图像名称中吗?你应该把它放在一边,然后用正则表达式(或者别的什么)来解析价格。title
似乎非常适合这份工作!img.title暂时有效!我一直在寻找一些有点花哨的东西,但我现在很高兴,我可以用下面的例子来玩弄,看看我是否能想出一些其他的东西,但同时标题也很完美。感谢您的回答,非常感谢(恐怕目前无法投票,分数不够)
<section id=main>
<!--populate with images from array-->
<p id="photos" class="product_display">
</section>
var imageArray = new Array();
imageArray[0]="images/coffee_prod_1.png";
imageArray[1]="images/coffee_prod_2.png";
imageArray[2]="images/coffee_prod_3.png";
imageArray[3]="images/coffee_prod_4.png";
imageArray[4]="images/coffee_prod_5.png";
imageArray[5]="images/coffee_prod_6.png";
imageArray[6]="images/coffee_prod_7.png";
//price array for products
var priceArray = ["€11.90", "€12.90", "€13.90", "€14.90", "€15.90", "€16.90", "€17.90"];
function getImage() {
var container = document.getElementById("photos");
for (var i = 0; i < imageArray.length; ++i) {
var img = new Image();
img.src = imageArray[i];
img.className = "product_details";
img.name = priceArray[i];
img.title = priceArray[i];
container.appendChild(img);
}
}
getImage();