Откройте диалог jquery, используя prev () и parent () - PullRequest
0 голосов
/ 04 сентября 2011

У меня есть список диалоговых окон, которые я хочу открыть, когда на них нажимается ассоциированная иконка, но я не пишу функцию .click () для каждого диалога.На данный момент мой HTML выглядит так:

<ul>

<li>
    <img src="e_gift_ss/design_2_1.jpg" alt="Screenshot 1"/> 
    <img src="e_gift_ss/design_2_2.jpg" alt="Screenshot 2"/> 
    <img src="e_gift_ss/design_2_3.jpg" alt="Screenshot 3"/> 
    <img src="e_gift_ss/logo_designs.jpg" alt="Screenshot 4"/> 
</li>

    <li class="portfolio_link"><img src="link_img/e_gift.png" alt="e-Gift Voucher" class="icon png" id="e_gift_link"/></li>

    <li>
      <article>
        <h4>Acer E-Gift Voucher</h4>
        <p>Designed as a web portal for a after sale marketing promotion.</p>
      </article>
    </li>

  </ul>

, а мой jquery выглядит так

$('.portfolio_link').css({backgroundPosition: "-480px 0"});

$('.icon').parent().prev().dialog({resizable:false,autoOpen:false,draggable:false,width:860,height:pageheight,modal:true});

$('icon').click(function(){$(this).parent().prev().dialog('open');

});

Создание элемента li в диалоговом окне работает нормально, но функция .click не открываетдиалог.

Любые идеи будут великолепны

Приветствия

1 Ответ

1 голос
/ 04 сентября 2011

Ваша последняя строка кода javascript гласит:

$('icon').click(function(){$(this).parent().prev().dialog('open');

Может быть, вы забыли точку перед значком имени класса?

Так и должно быть

$('.icon').click(function(){$(this).parent().prev().dialog('open');

Или это просто опечатка?

...