Spreadjs ссылки из iframe

Мы используем iframe на родительской странице, которая динамически заменяется другими страницами.

Спред загружается в родительский. Есть ли какой-то тип плагина, который позволит мне получить доступ к распространяемому ядру, которое загружено в родительский элемент со страниц iframe, без включения spread(language="JavaScript" src="http://cdn.wijmo.com/spreadjs/gcspread.sheets.all.8.40.20151.0.min.js") в нескольких дочерних (iframe) страницах? Jquery загружается нормально.

Главная страница iframe со ссылками

<iframe name="mainWindow" src="includes/View.asp frameborder="0" />
<link href="http://cdn.wijmo.com/spreadjs/gcspread.sheets.8.40.20151.0.css" rel="stylesheet" type="text/css" />
<script src="http://code.jquery.com/jquery-1.8.2.min.js" type="text/javascript"></script>
<script type="text/javascript" src="http://cdn.wijmo.com/spreadjs/gcspread.sheets.all.8.40.20151.0.min.js"></script>

Мы просто заменим источник iframe во время выполнения. Я использую следующий код, но распространение не инициализированы какие-либо предложения?

<script type="text/javascript">
        var parentWindow = window.parent;// This refers to parent's window object
        if (parentWindow && parentWindow.jQuery) { // Check to see if parentWindow and parentWindow.jQuery is truly
            window.jQuery = parentWindow.jQuery;
            window.$ = parentWindow.jQuery;
        }
        else {
            var jScript = document.createElement('script');
            jScript.setAttribute("type", "text/javascript");
            jScript.setAttribute("src", "http://code.jquery.com/jquery-1.8.2.min.js"); // load jQuery here
        }

        if (parentWindow && parentWindow.wijmo && parentWindow.GcSpread) { // Check to see if parentWindow and parentWindow.wijmo and parentWindow.GcSpread is truly
            window.GcSpread = parentWindow.GcSpread;
            window.wijmo = parentWindow.wijmo;
        }
        else {
            var jScript = document.createElement('script');
            jScript.setAttribute("type", "text/javascript");
            jScript.setAttribute("src", "http://cdn.wijmo.com/spreadjs/gcspread.sheets.all.8.40.20151.0.min.js"); // load gcspread here

        }

        $(document).ready(function () {
            var test = window;
            alert("JQuery loaded");
            var spread = new GcSpread.Sheets.Spread(document.getElementById("ss"));
            var spreadNS = GcSpread.Sheets;
            spread.setSheetCount(3);

            spread.bind(spreadNS.Events.ActiveSheetChanged, function (e, args) {
                $("#activeSheetIndex").val(spread.getActiveSheetIndex());
            });

            $("#btnAddSheet").click(function () {
                spread.addSheet(spread.getSheetCount());
            });

            $("#btnRemoveSheet").click(function () {
                var activeIndex = spread.getActiveSheetIndex();
                if (activeIndex >= 0) {
                    spread.removeSheet(activeIndex);
                }
            });

            $("#btnClearSheets").click(function () {
                spread.clearSheets();
            });

            $("#btnSetActiveSheetIndex").click(function () {
                var index = $("#activeSheetIndex").val();
                if (!isNaN(index)) {
                    index = parseInt(index);
                    if (0 <= index && index < spread.getSheetCount()) {
                        spread.setActiveSheetIndex(index);
                    }
                }
            });
        });
    </script>
<div class="sample-turtorial">
        <div id="ss" style="width:100%; height:580px;border: 1px solid gray;"></div>
        <div class="demo-options">
            <div class="option-row">
                <input type="button" style="width: 100px" value="Add Sheet" id="btnAddSheet" />
                <input type="button" style="width: 100px" value="Remove Sheet" id="btnRemoveSheet" />
                <input type="button" style="width: 100px" value="Clear Sheets" id="btnClearSheets" />
            </div>
            <div class="option-row">
                <label>ActiveSheetIndex:</label>
                <input type="text" id="activeSheetIndex" value="0" />
                <input type="button" id="btnSetActiveSheetIndex" value="Set" />
            </div>
        </div>

        
    </div>

1 ответ

Я не думаю, что вы пытаетесь работать, как будет выполняться код без ссылки на библиотеку (SpreadJS).

Можете ли вы объяснить, какой может быть ваш вариант использования, может быть, мы поможем вам найти другой способ выполнить то, что вам нужно.

Другие вопросы по тегам