如何获取循环的变量[i]而不在循环中创建函数" jshint"

时间:2017-07-19 09:01:19

标签: javascript html

我需要一些关于网站脚本javascript的帮助我假设它有点明显。 让我解释一下,我有一个画廊,一个循环,每次点击图库的图像,点击的图像将移动到另一个现在隐藏的div。 所以点击我调用2个函数,第一个用于显示div,第二个用于通过点击图像的href更改隐藏div中图像的de src。

   function OnClickGallery(){ 

      var Galerie = document.getElementById('GPNPHide'), 
          liens = Galerie.getElementsByTagName('a'),
          imgkids = Galerie.getElementsByTagName('img'),
          ImageBig = document.getElementById('ImageFull'); 

        for (var i = 0 ; i < liens.length ; ++i) { 
             liens[i].onclick = function(){ 

                  GalerieVueShowToggle(); 
                  ImageBig.src = this.href; 
                  return false; 
               }; 
        } 
  } 
  window.onload=OnClickGallery; 

一切都运行良好,直到我试图避免jshint错误&#34;不在循环中使功能&#34;通过在循环外部创建我的函数onClick并在循环中调用我的函数但在我的onClick函数中我显然没有在这里定义,我被困在这里,我如何在我的onClick中得到循环的i功能?

   function onClick() {
        "use strict";
        var ImageBig = document.getElementById('ImageFull'),
            Galerie = document.getElementById('GPNPHide'),
            liens = Galerie.getElementsByTagName('a');

        ImageBig.src = liens[i].href;
        return false;
    }


    function OnClickGallery() {
        "use strict";
        var Galerie = document.getElementById('GPNPHide'),
            liens = Galerie.getElementsByTagName('a'),
            imgkids = Galerie.getElementsByTagName('img'),
            ImageBig = document.getElementById('ImageFull'),
            i;

       for (i = 0; i < liens.length; i += 1) {
            liens[i].onclick = galerieVueShowToggle;
            liens[i].onclick = onClick;
        }

    window.onload = OnClickGallery;

1 个答案:

答案 0 :(得分:-1)

传递&#34; i&#34;的值像这样的onClick函数: -

的onClick(I)