代码之家  ›  专栏  ›  技术社区  ›  CoderDennis

如何使用FBML让用户语音反馈选项卡显示在Facebook应用程序页面上?

  •  1
  • CoderDennis  · 技术社区  · 15 年前

    我有一个使用FBML的Facebook应用程序,我想包括 UserVoice 应用程序页面上的反馈选项卡小部件。我复制并粘贴了javascript到我的fbml页面,但当facebook呈现页面时,该javascript被删除,因此选项卡不会显示。

    有没有人有经验 Facebook's modified version of JavaScript 让用户语音标签在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 回复  |  直到 12 年前
        1
  •  2
  •   Assaf Lavie    12 年前

    忘记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>
    

    这应该会在你的页面上增加一个用户语音标签。您可以根据自己的喜好定制CSS。

    请注意,这会跳过用户语音模式对话框(无论如何在Facebook上都不会很好地工作),并将用户直接带到您的用户语音主页。

        2
  •  2
  •   Scott Rutherford    14 年前

    你也可以注册新的uservoice facebook标签,它允许你将uservoice直接嵌入你的facebook页面。那可能是最好的解决办法!(完全披露,我是UserVoice的联合创始人)

    www.uservoice.com/facebook

    推荐文章