Как мне горизонтальную прокрутку таблицы div внутри iframe? - PullRequest
0 голосов
/ 31 марта 2020

Итак, у меня есть таблица, внутри iframe, внутри другого фрейма, которую я хотел бы иметь возможность прокручивать горизонтально в назначенные места, щелкая теги привязки, которые находятся за пределами фрейма, в котором он находится. Сначала я использовал встроенный js метод (когда таблица была другой), который работал, но теперь, когда я обновил до CSS, метод не работает. Поэтому я обращаюсь к вам за помощью. Заранее спасибо.

Пример кода, который я использую:

HTML Используемый кадр, который ссылается к кадру таблица находится в:

<iframe src="PrimaryTables.html" id="FrameTableIsIn" name="FrameTableIsIn" scrolling="yes" align="middle" height="1350" width="100%" marginwidth="0" marginheight="0" frameborder="no"></iframe>

HTML Документ внутри iframe (FrameTableIsIn):

<div class="container" id="contained">
<table width="100%" cellspacing="1" cellpadding="0" border="0" id="primerows">
<tr>
    <td class="fixed">STUFF HERE</td>
    <td class="fixedspecial"align="center" valign="middle">STUFF HERE THAT OVERLAPS THE PREVIOUS TD STUFF NICELY</td>
    <td>OTHER STUFF HERE REPEATING COLUMNS</td>
</tr>
</table>
</div>

Множество строк и столбцов для действительно длинной таблицы обрабатываются и работают хорошо с CSS таким образом:

<style>
td, th {
    white-space: nowrap;
    min-width: 100px;
    height:32px;
    vertical-align: middle;
}
.container {
    overflow-x: scroll;
    margin-left: 100px;
}
.fixed {
    height:30px;
    border: 1px solid #000000;
    position: absolute;
    left: 0;
    display: inline-table;
    text-align: center;
    vertical-align: middle;
}
.fixedspecial {
    border: 1px solid #000000;
    position: absolute;
    left: 0;
    height:35px;
}
</style>

Inline java, как это на странице вне iframe (FrameTableIsIn), которую я хочу обработать документ внутри iframe (FrameTableIsIn):

<A HREF="javascript:parent.InitialFrame.FrameTableIsIn.scrollTo(110,0);parent.InitialFrame.scrollTo(0,50);" TARGET="InitialFrame">Link Text Here</A>

С моей старой таблицей (html 3 или что-то) я смог щелкнуть ссылку, страница прокрутила (прыгнула) таблицу горизонтально до обозначенного места, а затем прокрутила (прыгнула) вверх страницы чтобы увидеть таблицу в iframe над ссылкой. Теперь с css, et c. он будет прокручивать страницу вверх, но не будет прокручивать таблицу во встроенном iframe по горизонтали, потому что функция прокрутки захвачена внутри элемента div, и я не знаю правильного дескриптора здесь ...

Inline java предпочтительнее, если возможно, все эти сценарии java засоряют мое и безумное / спагетти-кодирование и напоминают мне о Pascal действительно ... :) (для тех из вас, кто еще знает, что это такое:)

1 Ответ

0 голосов
/ 01 апреля 2020

Так что для тех, кому, возможно, понадобится знать, кажется, что нет способа вызвать iframe к таблице div из-за пределов iframe с помощью встроенного метода javascript. Таким образом, мое решение, которое работает как моя старая таблица, заключалось в том, чтобы вытащить таблицу из iframe, идентифицировать div (DivTable), и тогда я смог заставить встроенный javascript работать таким образом:

<A HREF="javascript:parent.InitialFrame.DivTable.scrollTo(2580,0);" TARGET="InitialFrame">LINK HERE</a>

Теперь мои ссылки прокручивают мою таблицу Div с фиксированным столбцом в положение, установленное scrollto (x, y). Помните, что InitialFrame - это фрейм, который разделяет таблица и ссылки, и целью, вероятно, может быть просто (_top), но теперь я не перепутал его, поскольку он работает :). Надеюсь, это поможет кому-то в будущем ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...