Как получить вкладку обратной связи UserVoice для отображения на странице приложения Facebook с использованием FBML? - PullRequest
1 голос
/ 31 октября 2009

У меня есть приложение Facebook, использующее FBML, и я хочу включить виджет обратной связи UserVoice на страницах моего приложения. Я скопировал и вставил JavaScript на свою страницу FBML, но когда Facebook отображает страницу, этот JavaScript удаляется, поэтому вкладка не отображается.

Кто-нибудь имеет опыт работы с модифицированной версией Facebook JavaScript и с тем, чтобы заставить работать вкладку UserVoice на странице FBML?

Вот код JavaScript:

<script>
<!--
  var uservoiceJsHost = ("https:" == document.location.protocol) ? "https://uservoice.com" : "http://cdn.uservoice.com";
  document.write(unescape("%3Cscript src='" + uservoiceJsHost + "/javascripts/widgets/tab.js' type='text/javascript'%3E%3C/script%3E"))
//-->
</script>
<script>
<!--
UserVoice.Tab.show({ 
  /* required */
  key: 'callme',
  host: 'callme.uservoice.com', 
  forum: '31286', 
  /* optional */
  alignment: 'left',
  background_color:'#f00', 
  text_color: 'white',
  hover_color: '#06C',
  lang: 'en'
})
//-->
</script>

Ответы [ 2 ]

2 голосов
/ 01 декабря 2010

Вы также можете подписаться на новую вкладку UserVoice Facebook, которая позволяет встраивать UserVoice непосредственно в ваши страницы Facebook. Это, вероятно, будет лучшим решением! (Полное раскрытие, я соучредитель в UserVoice)

www.uservoice.com / facebook

2 голосов
/ 01 ноября 2009

Забудьте о JavaScript. Просто включите следующий HTML:

<style type="text/css">
#uservoice-dialog
{
    display: block;
    margin: -2em auto 0 auto;
    position: absolute;
    text-align: left;
    z-index: 100003;
}
#uservoice-overlay
{
    background-color: #000;
    filter: alpha(opacity=70);
    height: 100%;
    left: 0;
    opacity: .7;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 100002;
}
#uservoice-dialog[id], #uservoice-overlay[id]
{
    position: fixed;
}
#uservoice-overlay p
{
    color: #ddd;
    font: bold 14px arial, sans-serif;
    letter-spacing: -1px;
    margin: 0;
    padding: 5px;
}
#uservoice-dialog #uservoice-dialog-close
{
    background-color: transparent;
    background-position: 0 0;
    background-repeat: no-repeat;
    color: #06c;
    cursor: pointer;
    height: 48px;
    position: absolute;
    right: -12px;
    top: -11px;
    width: 48px;
}
* html.dialog-open body
{
    height: 100%;
}
* html.dialog-open, * html.dialog-open body
{
    overflow: hidden;
}
html.dialog-open object, html.dialog-open embed, * html.dialog-open select
{
    visibility: hidden;
}
* html #uservoice-overlay
{
    width: 110%;
}
* html #uservoice-dialog #uservoice-dialog-close
{
    background: none;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='https://uservoice.com/images/icons/close.png');
}
a#uservoice-dialog-close
{
    background-image: url(http://cdn.uservoice.com/images/icons/close.png);
}
</style>
<a href="YOUR_USERVOICE_PAGE_URL_HERE" id="uservoice-feedback-tab">Feedback</a>

Это должно поставить вкладку UserVoice на вашей странице. Вы можете настроить CSS так, как вам нравится.

Обратите внимание, что при этом пропускается модальное диалоговое окно UserVoice (которое в любом случае не очень хорошо работает на Facebook), и пользователи перенаправляются прямо на домашнюю страницу UserVoice.

...