#jquery #html
#jquery #HTML
Вопрос:
Я хочу, чтобы вся строка таблицы отображалась во всплывающем окне для шахматной игры.
Я пошел в http://thephuse.com/design-and-usability/clickable-table-rows-with-jquery / который говорит мне добавить и добавляет:
<!-- make entire <tr> clickable-->
<script>
jQuery( function($) {$('tbody tr[data-href]').addClass('clickable').click(
function(){window.location = $(this).attr('data-href');}).find('a').hover(
function() {$(this).parents('tr').unbind('click');},
function() {$(this).parents('tr').click( function()
{window.location = $(this).attr('data-href');});});});
</script>
Но это приводит к полноэкранному окну браузера. Я хочу, чтобы всплывающее окно с центром, подобное этому сценарию, создавалось:
<!--popup centered window-->
<script>function PopupCenter(pageURL, title,w,h)
{var left = (screen.width/2)-(w/2);
var top = (screen.height/2)-(h/2);
var targetWin = window.open (pageURL, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=' w ', height=' h ', top=' top ', left=' left);} </script>
Да, я пробовал
<tr class="PopupCenter" data-href="http://google.com">
но результирующее всплывающее окно по-прежнему полноэкранное; как вы можете видеть из таблицы игр на
http://chesstao.com/test-2.php
класс PopupCenter не применяется.
Что я могу сделать?
Добавление:
<tr onclick="PopupCenter('games/$game', 'myPop1',400,400);"> dw
Я пробую другое решение, но в этом также есть интересная ошибка. На этот раз я использую всплывающий код фотограф кредит под фотографией в http://chesstao.com/test-2.php
Я хочу щелкнуть в любом месте и отобразить всплывающее окно.
Интерактивный код:
<script>
jQuery( function($) {$('tbody tr[data-href]').addClass('clickable').click(
function(){temp($(this).attr('data-href');}).find('a').hover(
function() {$(this).parents('tr').unbind('click');},
function() {$(this).parents('tr').click( function()
{temp($(this).attr('data-href');});});});
</script>
<!--Another Pop-up for diagram-->
<script src="js/jquery.popupWindow-min.js" ></script>
<script>$('.diagram-popup').popupWindow({height:500, width:800}); </script>
и HTML:
<tr class="gradeA" data-href="games/BG-1001.php" ><td>07/17/1998</td><td>EU-ch U12</td>
<td>Mureck</td><td>0000</td><td>Khramiankov, Yuri</td><td>B99
</td><td style="display:none;visibility:hidden;">games/BG-1001.php</td></tr>
Ответ №1:
Замените оба
window.location = $(this).attr('data-href');
с
PopupCenter($(this).attr('data-href'), "Some Title", 100, 100);
или окно любого размера, которое вы хотите
Примечание: вам нужно где-то PopupCenter
определить в своем скрипте, чтобы использовать его.
Полный ответ будет таким:
<script type="text/javascript">
jQuery(function($) {
$('tbody tr[data-href]').addClass('clickable').click(
function(){
PopupCenter($(this).attr('data-href'), 'title', 100, 100)
}
).find('a').hover(
function() {
$(this).parents('tr').unbind('click');
},
function() {
$(this).parents('tr').click(
function() {
PopupCenter($(this).attr('data-href'), 'title', 100, 100);
}
);
}
);
});
function PopupCenter(pageURL, title,w,h) {
var left = (screen.width/2)-(w/2);
var top = (screen.height/2)-(h/2);
var targetWin = window.open (pageURL, title, 'toolbar=no, location=no, '
'directories=no, status=no, menubar=no, scrollbars=no, resizable=no, '
'copyhistory=no, width=' w ', height=' h ', top=' top ', left=' left);
}
</script>
Вам нужно будет указать заголовок и правильные значения высоты и ширины. Но, по-моему, это все.
Комментарии:
1. <!— make entire <tr> clickable <script> jQuery( function($) {$(‘tbody tr[data-href]’).addClass(‘clickable’).click( function(){window.location = $(this).attr(‘data-href’);}).find(‘a’).hover( function() {$(this).parents(‘tr’).unbind(‘click’);}, function() {$(this).parents(‘tr’).click( функция() {окно. location = $(this).attr(‘data-href’);});});}); </ скрипт> —> Но есть два случая: window . location = $(this).attr(‘data-href’); -какие из них мне изменить?
2. dw .. и теперь нажатие на <tr> ничего не делает!
3. скрипт, который вы щедро предоставили, работает только на первой странице таблицы. Если я перейду на страницу 2/3, щелкнув по строке таблицы dw. Кроме того, ваш скрипт повторно использует то же окно, что и было названо. Я бы предпочел, чтобы у него было новое всплывающее окно с другим заголовком, чтобы сделать его менее запутанным.
4. Я думаю, что это проблема с таблицами данных