0

私はjqueryGallerifficプラグインを使用しています。これは、スクリプトによって生成されるコードの一部です。

    <div id="slideshow" class="slideshow">
<span class="image-wrapper current" style="opacity: 1; ">
<a class="advance-link" rel="history" href="#2" title="Title #0">
&nbsp;<img alt="Title #0" src="images/products/Classic.jpg"></a></span></div>

imgタグの前のこのスペースにより、画像が間違った場所に表示されます。スクリプトがそのようなスペースを生成する理由はわかりませんが、代わりにスペースを削除する必要があると思いました。

次のコードを試しましたが、機能しませんでした。

$('a.advance-link').text( $('a.advance-link').text().replace(/\s+/g, "") );

これもやってみました

$('a.advance-link:contains("&nbsp;")').html(function(i, h) {
                        return h.replace(/\s+/g, '');
                      });

しかし、運が悪いので、誰かがそれをどのように削除するのか理解できますか?

ありがとう

4

1 に答える 1

0

プラグインを見てみました。

// Construct new hidden span for the image
var newSlide = this.$imageContainer
.append('<span class="image-wrapper current"><a class="advance-link" rel="history" href="#'+this.data[nextIndex].hash+'" title="'+imageData.title+'">&nbsp;</a></span>')
.find('span.current').css('opacity', '0');

newSlide.find('a')
    .append(imageData.image)
    .click(function(e) {
        gallery.clickHandler(e, this);
});

最初に話している文字列を作成し、次にimageDataをアンカーに追加することに気付くでしょう。その結果、&nbsp;タグが置き換えられることはありません。これをに変更し.append(imageData.image).html(imageData.image)、問題が解決しないかどうかを確認してみてください。

于 2013-01-25T09:09:39.517 に答える