нужны советы по созданию виджета JavaScript - PullRequest
0 голосов
/ 28 сентября 2010

Я создаю веб-приложение, и мне нужно создать виджет формы обратной связи, чтобы пользователи могли разместить его на своих веб-сайтах, и все отправленные данные будут сохранены в моем веб-приложении. Мне также необходимо пройти аутентификацию в виджете, прежде чем пользователь сможет отправить информацию (например, используя форму входа в приложение или учетную запись Facebook).

Я никогда не строил что-то подобное. Какой самый лучший способ? Я не совсем совместим с необработанным JavaScript. Но если я использую jquery, это может конфликтовать со страницей клиента. А как насчет междоменных запросов?.

Обратите внимание, что первая версия моего виджета должна быть во всплывающем окне.

Спасибо за вашу помощь.

Ответы [ 3 ]

1 голос
/ 28 сентября 2010

Или, если iframe или всплывающее окно не то, что вы имели в виду, вы все равно можете сделать это с AJAX, но вам нужно будет использовать JSONP или установить Access-Control-Allow-Origin заголовок во всех ваших ответах.

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

1 голос
/ 28 сентября 2010

В вашем случае я бы порекомендовал использовать <iframe>. Он должен предотвращать любые конфликты JavaScript, возникающие между вашим фреймом и родительским веб-сайтом, а также широко поддерживаться всеми основными веб-браузерами.

После этого вы сможете открыть всплывающее окно, используя метод window.open. Я буду осторожен с всплывающими окнами, так как не существует надежного кросс-браузерного метода для определения, заблокировано ли всплывающее окно, что может привести пользователей в замешательство.

0 голосов
/ 28 сентября 2010

Если это всплывающее окно, вы можете просто открыть те из них, которые открывают страницу обратной связи в вашем веб-приложении ...

<head>
    <script type="text/javascript">
         function mypopup(url) {
              mypopup = window.open(
                 url,  
                 "mypopup",
                 "width=600,height=400,status=yes,scrollbars=yes,resizable=yes"
              );
              mypopup.focus();
         }
    </script>
</head>
<body>
    <a href="#" onclick="mypopup('http://example.com/feedbackform');">
       Open Feedback Form
    </a>
</body>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...