Здравствуйте... Нужна помощь! тяжело объяснить, голова уже плохо соображает, будет много букаф, но попробую...
На входе имеется данный плагин и скрипт на открытие модального окна:
http://jemand.ru/modalnoe-okno-na-jquery/
Так как у данного плагина нету вывода отдельного элемента, решил сделать его вывод в модальном окне прямо с каталога... в которое подсовывается description, да и все что душе угодно...
Все бы было хорошо, но модальное окно любого элемента открывается с description первого, что и не удивительно, name у все ссылок a был одинаковый...
В стандарте cat.view.php плагина от sergeyterr эта ссылка открывала изображение с каталога, что было переписано на открытие модального окна и задание уникального атрибута name каждого элемента:
<?php
Catalog::$meta['title'] = Notification::get('title');
if (Notification::get('error')) Alert::error(Notification::get('error'));
else {
$id=1;
foreach($records as $row):
?>
<div style="display:block; float:left; width:<?php echo ((Option::get('catalog_w'))*0.05+(Option::get('catalog_w'))); ?>px; height: 315px; margin-right:15px; margin-bottom:15px; text-align:center">
<?php
if ($opt["title"] == 0)
{
echo "<div id=\"eternum-item-title\">".$row['title']."</div>";
}
?>
<?php if (file_exists(ROOT . DS . 'public' . DS .'catalog' . DS . $opt["cat_id"] . DS . $row['id'] . '_t.jpg')) { ?>
<a href="#dialog" name="modal<?php echo $id++;?>"> ...Вообщем после этого у нас есть каждый элемент каталога с ссылкой, у которой name формата modal$id+1 т.е. modal1, modal2, modal3.... modal++
скрипт открытия модального окна по дефалту
$(document).ready(function() {
$('a[name=modal]').click(function(e) {
...в котором и задается дальнейшее содержимое модального окна с атрибутом name="modal"
написал ('подсмотрел и переделал') скрипт, в котором получаю name ссылки элемента:
var Name = $('.name').attr('name');
$("a").click(function() {
var name = $(this).attr("name");
alert(name);alert() выводит правильное значение, все нормально....
А теперь внимание, господа знатоки, /что в черном ящике/ как мне подставить
в
$('a[name=modal]').click(function(e) {вот что имеется на данный момент в cat.view.php
<div id="collection-item">
<?php
Catalog::$meta['title'] = Notification::get('title');
if (Notification::get('error')) Alert::error(Notification::get('error'));
else {
$id=1;
foreach($records as $row):
?>
<div style="display:block; float:left; width:<?php echo ((Option::get('catalog_w'))*0.05+(Option::get('catalog_w'))); ?>px; height: 315px; margin-right:15px; margin-bottom:15px; text-align:center">
<?php
if ($opt["title"] == 0)
{
echo "<div id=\"eternum-item-title\">".$row['title']."</div>";
}
?>
<?php if (file_exists(ROOT . DS . 'public' . DS .'catalog' . DS . $opt["cat_id"] . DS . $row['id'] . '_t.jpg')) { ?>
<a href="#dialog" name="modal<?php echo $id++;?>">
<img class="
<?php
if (Page::slug() == 'eternum'){
echo 'eternum';
}
elseif (Page::slug() == 'eternum-signature'){
echo 'eternum-signature';
}
elseif (Page::slug() == 'eternum-gastronum'){
echo 'eternum-gastronum';
}
?>" alt="" style="margin:auto; max-height:<?php echo Option::get('catalog_w'); ?>px;" src="<?php echo $opt['url'].$opt["cat_id"].'/'.$row['id'].'_t.jpg' ?>"/></a>
<div id="boxes">
<div id="dialog" class="window">
<?php
if ($opt["desc"] == 0)
{
echo "<div class=\"desc text-center\">".Text::toHtml(File::getContent($opt["storage"] . $opt["cat_id"] . DS. $row['id'] . '.catalog.txt'))."</div>";
}
?>
</div>
<span><a href="#" class="close"/>Закрыть его</a>
</div>
</div>
<?php
if (Page::slug() == 'eternum'){
echo '<div id="eternum-item-bg"></div>';
}
elseif (Page::slug() == 'eternum-signature'){
echo '<div id="signature-item-bg"></div>';
}
elseif (Page::slug() == 'eternum-gastronum'){
echo '<div id="gastronum-item-bg"></div>';
}
?>
<?php } else { ?>
<a href="<?php echo Option::get('siteurl') . 'public/catalog/dsc_empty.jpg'; ?>">
<img class="img-polaroid" style="max-width:<?php echo (Option::get('catalog_w')); ?>px;" src="<?php echo Option::get('siteurl') . 'public/catalog/dsc_empty.jpg'; ?>" />
</a>
<?php
}
if ($opt["price"] == 0)
{
if(Session::get('user_id')){
$price = $row['price'] * Option::get('kurs');
echo "<div class=\"price\">".$price." грн.</div>";
}
}
?>
</div>
<?php
endforeach;
}
?>
<div style="clear:both"></div>
<div id="news-paginator"><?php Catalog::paginator($opt['current_page'], $opt['pages_count'], $opt['site_url'].'catalog/'.$opt["slug"] . '/');?></div>
</div>и само модальное окно
$(document).ready(function() {
var Name = $('.name').attr('name');
$("a").click(function() {
var name = $(this).attr("name");
alert(name);
$('a[name=????????]').click(function(e) {
e.preventDefault();
var id = $(this).attr('href');
var maskHeight = $(document).height();
var maskWidth = $(window).width();
$('#mask').css({'width':maskWidth,'height':maskHeight});
$('#mask').fadeIn(1000);
$('#mask').fadeTo("slow",0.8);
var winH = $(window).height();
var winW = $(window).width();
$(id).css('top', '5%');
$(id).css('left', '10%');
$(id).fadeIn(2000);
});
$('.window .close').click(function (e) {
e.preventDefault();
$('#mask, .window').hide();
});
$('#mask').click(function () {
$(this).hide();
$('.window').hide();
});
});
});Всем спасибо если хотя бы прочитаете все это...