Как запустить команду браузера с помощью jQuery / javascript? - PullRequest
3 голосов
/ 27 января 2010

У меня есть одна страница в HTML, есть две кнопки, сохранить и распечатать.

Когда пользователь нажимает на Печать, он должен распечатать страницу и Когда пользователь нажимает на страницу Сохранить, она должна открыть окно Сохранить как ... для этой страницы.

Желательно решение javascipt / jquery.

Спасибо.

Ответы [ 2 ]

2 голосов
/ 27 января 2010

Для печати вы можете использовать window.print().

Нет стандартного способа вызвать диалоговое окно Сохранить. В IE вы можете использовать document.execCommand('SaveAs').

РЕДАКТИРОВАТЬ : Технически window.print не является частью какого-либо стандарта (Источник: MDC ), но широко доступен.

1 голос
/ 27 января 2010

try: (это только для "сохранить как") разорвано и отредактировано с здесь

<html>
<head>

<script src="http://code.jquery.com/jquery-latest.js"></script>

<script >
$(document).ready(function(){
$('a#save').click(function() {
        if (!!window.ActiveXObject) {
            document.execCommand("SaveAs");
        } else if (!!window.netscape) {
            var r=document.createRange();
            r.setStartBefore($("head")[0]);
            var oscript=r.createContextualFragment('<script id="scriptid" type="application/x-javascript" src="chrome://global/content/contentAreaUtils.js"><\/script>');
            $('body').append(oscript);
            r=null;
            try {
                netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
                saveDocument(document);
            } catch (e) {
                //no further notice as user explicitly denied the privilege
            } finally {
                //re-defined
               $("#scriptid").remove();
            }
        }
   return false;
    })
})
</script>
</head>
<body>
<a href="#" id="save">save the document</a>
</body>
</html>
...