跨度内的'alt'

时间:2012-04-05 23:51:43

标签: javascript html alt

如果'alt'在'span'内,我需要更改以下脚本

        function setNavi( $c, $i ) {
                var title = $i.attr( 'alt' );
                $('#title').text( title );

                var current = $c.triggerHandler( 'currentPosition' );
                $('#pagenumber span').text( current+1 );

            }

    $(function() {

        $('#carousel').carouFredSel({
            debug: true,
            responsive: true,
            circular: false,
            auto: true,
            prev: '#prev',
            next: '#next',
            items: {
                visible: 1,
                width: 200,
                height: '66%'
            },
            scroll: {
                onBefore: function( $oI, $nI ) {
                    setNavi( $(this), $nI );
                }
            },
                onCreate: function( $vI ) {
                    setNavi( $(this), $vI );
                }
            });

HTML:

<div id="carousel">
<span id="1"><img src="images/someimage.jpg"  alt="sometitle" /></span>
<span id="2"><img src="images/someimage2.jpg" alt="sometitle2" /></span>
</div>

<div id="navi">
 <p id="pagenumber">Now showing image <span></span> of 7.</p>
 <p id="title"></p>
</div>

页面编号正确显示,但不是图像标题。也尝试使用'title'而不是'alt',但它仍然会产生一个空白的标题。

3 个答案:

答案 0 :(得分:3)

是的,你愿意。 alt用于图像。根据代码判断,我会说title属性是一个合适的选择,它甚至会显示alt对图像所做的相同工具提示。

答案 1 :(得分:1)

你不需要这样做,它的语义不正确。跨度有title字段。使用它而不是alt

答案 2 :(得分:0)

如果$i对象不包含alt属性,则您无法将其指定为其他元素的文本。如果元素在另一个元素内部并不重要,它取决于您通过函数传递的参数。正如Sime所说,这取决于$i是什么。