1

1つまたは2つの要素を分離し、それらをjavascript変数に入れるのに役立つ可能性があります。私はまだDOMで物事を正しく識別する方法を学んでいます、私がやろうとしていることが可能であると想像しなければなりません。

次のことを考慮してください。

$('.fancybox').fancybox({
    'autoScale': false,
    'type': 'iframe',
    'padding': 0,
    'closeClick': false,
    helpers: {
        overlay: {
            closeClick: false
        }
    },
    afterShow: function () {
        $("#overlay_content_top").show();
        $("#overlay_content_bottom").show();
    },
    afterClose: function () {
        $("#overlay_content_top").hide();
        $("#overlay_content_bottom").hide();
    }
});

<div class ="example">
<a class="fancybox" href="http://my-iframe.example"><img src="myimage.jpg" width="x" height="y" /></a>
**<span>Important Information I need</span>**
</div>

.example spanのhtmlを変数に入れて、fancyboxに表示されているものに適用する必要があります。

だから、クレイジーな擬似コードでこのようなもの:

var getname = $(this).html('.example span');

$('.inherit_span').html(getname);

ページ上にクリックできる20の異なるアイテムがあり、アイテムごとに個別のIDまたは名前を生成する必要はありません。むしろ、fancybox関数が呼び出されたときにスパンからhtmlを取得し、その名前をに適用します。ライトボックスディスプレイ内の別の要素。助けていただければ幸いです。

4

3 に答える 3

1

変更するだけです:

var getname = $(this).html('.example span');

に:

var getname = $('.example span').html();

また:

$('.inherit_span').html($('.example span').html());
于 2012-07-19T07:34:56.123 に答える
1

実際、あなたはかなり近いです!まず、getyourを選択する必要がありますspantext()メソッドまたはメソッドのいずれかを使用して、テキストまたはHTMLを取得できますhtml()

var html = $('div.example > span').html()

次に、テキストを配置する要素を取得しhtml()、角かっこで囲まれた値/変数を使用してメソッドを使用して設定する必要があります。

$('.inherit_span').html(html);

html() 値なしで使用すると値が取得され、値ありで使用html() するとが設定されます。

このtext()方法は実質的に同じように機能しますが、HTML形式を除外します。

于 2012-07-19T07:36:12.437 に答える
1

<a>複数の<span>タグが後に複数のタグがあるシナリオがある場合があります。その場合は、コールバック.next()内で次のようなメソッドを使用します。beforeShow

beforeShow: function(){
 var getname = $(this.element).next('span').html();
 $('.inherit_span').html(getname);
}

:変数をgetnameコールバックの外部で使用できるようにするには、スクリプトの最初で次のように宣言します。

<script>
var getname;
.
.
于 2012-07-19T07:56:33.870 に答える