本帖最后由 alai0729 于 2011-03-10 14:38:10 编辑

解决方案 »

  1.   

    回KongHuLu大這是我從其他地方看的,不知道正不正確
    var i=0, ci;ci=c[i]; ++i
    因為ci=c[i],所以當ci不等於c[i]時for就會中止了...
      

  2.   

    这里的this就是img元素,
    所以this.alt或者$(this).attr('alt')都是可以的,
    不运作的原因我觉得是这里:
    $('img').eq(i).ready(function chk() {
    ready应该是document的方法,把这个改成load就可以了。
      

  3.   

    感謝darkh0rse大
    這個問題我也有想過,起初我是上網查到也有人這樣用所以才試試看的
    我有試過把ready改成click,是可以正常運作的,但這單純是為了測試
    若要把ready改成load的話,不知道是不是opera的時序關係(我要在opera上運行)
    它是完全不會有反應的(但也不會報錯)...但我想先請教ready確定是僅限document的方法嗎@@?
      

  4.   

    ci=c[i]不是等于,而是把c[0],c[1],c[2]....这样一个一个赋值给ci变量。
      

  5.   

    ready一般用于document,但是也一样可以用于其他某个DOM元素对象!opera没试过,jq有的时候操作也确实不能面面具到!估计你用的浏览器特殊,看你字体都是繁体的。不知道楼主是否是想做图片加载延时效果,如果是可以考虑用JQUERY的插件,jquery lazyload
      

  6.   

    感謝falizixun2大的回應
    我用的瀏覽器是opera,繁體是因為我是臺灣人,希望繁體字不會造成大家困擾@@"我是在頁面載入(document.ready)一開始就在所有的圖片加上css邊框(outline),和其他一些屬性標記
    我發問的這段語法是要讓每個圖片在"自身"載入完成後就將設定的屬性清除或改變
    所以想將每張圖片都綁一個ready.....
    現在依然想不出辦法來....另請教falizixun2大
    ci=c[i],這個for之所以終止是因為當i超過c數量導致ci賦予不到值,所以終止嗎?
    再次感謝!
      

  7.   

    i后面有条件啊。i++,它不段增加,知道c[i]不存在了,因为c[i]这个数组是有限的,取到数组末尾,自然就终止了for循环!
      

  8.   

    不用一个一个去绑定图片操作,用jquery lazyload,整个页面所有图片,自然都能达到效果,对这个插件
    <script src="jquery.lazyload.js" type="text/javascript"></script>引用一下,下面直接用就OK了。
      

  9.   

    jquery lazyload用法,上google或百度找找,很容易找到的。
      

  10.   

    感謝falizixun2大
    關於這個for的問題我還有點不懂你說:
    >>i後面有條件啊。i++,它不段增加,知道c[i]不存在了,
    >>因為c[i]這個陣列是有限的,取到陣列末尾,自然就終止了for迴圈!for (var i=0, ci;ci=c[i]; ++i)
    但它是如何知道c[i]不存在了呢?
    for不是一個僅靠我們設定條件在跑的語法嗎?
    此例的條件是ci=c[i]對吧?
    所以是指當i大過c陣列,ci無法被賦予c[i]這個不存在的值,就會停止?
      

  11.   

    to falizixun2大
    請問我說錯什麼話了嗎?
    怎不理我了?....
      

  12.   


    LZ的这个理解没错的。你想一下,当c[i]不存在时,ci的值是什么?  
    是"undefined"!
    在js 中0,""(空字符串),undefined都是“假”。
      

  13.   

    感謝wern0565大
    我明白了!..感謝! ^^