簡體   English   中英

當使用.click函數加載圖庫時,TouchTouch畫廊不起作用

[英]TouchTouch gallery doesn't function when gallery is loaded with .click function

我在這里有一個畫廊其中有兩種狀態,按藝術家排序或按字符排序。 我有一個簡單的.click函數來進行適當的圖庫加載,該加載效果很好(如果加載緩慢,請計划制作一個預加載器或稍后再加載)。

除此之外,我還將TouchTouch圖庫用於移動版本。 它本身也可以很好地工作: 沒有.click函數的情況下,它實際上是有效的。

當畫廊自己加載時,TouchTouch可以正常工作,但是當我使用.click函數加載時,它卻不能。

我嘗試將加載TouchTouch的腳本從外部main.js文件移動到主頁的標題和加載各個畫廊的php文件中,但是似乎沒有任何效果。 我假設這與它的加載時間有關,但是我對jQuery / etc的了解不夠,還不知道該怎么做。

.click函數:

$(document).ready(function(){
    $("#m-sortby-artist").click(function(){
        $("#mob-fanart").load("sort/byartist.php");
    });
});

有問題的div:

<span id="m-sortby-artist">Sort by Artist</span> &middot; <span id="m-sortby-char">Sort by Character</span></p>
<div id="mob-fanart"></div>

創建畫廊的XML(如果有用的話),但我不認為它真正包含在其中:

<div class="mobile">
    <div class="gallery-mobile" data-gallery="one" id="m-sallie"></div>
    <script>
        var x,xmlhttp,xmlDoc
        xmlhttp = new XMLHttpRequest();
        xmlhttp.open("GET", "sort/byartist.xml", false);
        xmlhttp.send();
        xmlDoc = xmlhttp.responseXML; 
        x = xmlDoc.getElementsByTagName("fanart");
        div="<h3>By Sallie<br><span class='artist-link'>@ <a href='https://rigaffe.co.uk'>Rigaffe</a></span></h3>";
        for (i = 0; i <82; i++) {
          div += "<a href='images/fanart/";
          div += x[i].getElementsByTagName("artist")[0].childNodes[0].nodeValue;
          div += "/"
          div += x[i].getElementsByTagName("filename")[0].childNodes[0].nodeValue;
          div += "'><div class='";
          div += x[i].getElementsByTagName("class")[0].childNodes[0].nodeValue;
          div += "' style='background-image:url(images/fanart/";
          div += x[i].getElementsByTagName("artist")[0].childNodes[0].nodeValue;
          div += "/t/"
          div += x[i].getElementsByTagName("filename")[0].childNodes[0].nodeValue;
          div += ");'></div><div class='thumb-box'></div></a>";
        }
        document.getElementById("m-sallie").innerHTML = div;
    </script>
</div>

初始化TouchTouch:

$(function(){
    $('.gallery-mobile a').touchTouch();
});

TouchTouch代碼的大部分內容與開箱即用的內容相同,只是一些純粹的外觀樣式。

修復! 事實證明,有一個地方我沒有嘗試放置“ Initiate TouchTouch”腳本:就在主畫廊div的末尾。 成功!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM