更改 "Access Google Analytics" 按钮文本
Changing The "Access Google Analytics" Button Text
我的站点中有一个管理页面,我在其中实施了 Google Analytics Embed。一切正常,但我想翻译登录按钮文本:
此按钮由 gapi.analytics.auth.authorize()
调用
我的函数看起来像这样 atm:
gapi.analytics.auth.authorize({
userInfoLabel: 'Logged in as: ',
container: 'embed-api-auth-container',
clientid: 'CLIENTID'
});
我查看了开发人员指南,我发现 userInfoLabel:
正在替换文本“You are logged in as:
”,但我没有找到任何关于如何替换登录文本的信息按钮。
我正在与 Chart.js and Third party visualizations Demo 合作。
登录后我的页面如下所示:
如果未登录则看起来像这样:
问题是:
- 如何替换 "Access Google Analytics" 文本?
- 如何设置
当用户不在时,容器的值为
display:none;
已登录。(容器 ID:'container'
)
编辑:
我试图检查 gapi.analytics.auth.isAuthorized()
我想检查用户是否登录的部分,但它总是给出 false
.
其实我找到了另一种方法来替换那个按钮上的文字,但我不会接受我的回答,希望有人能找到问题的真正答案。
我所做的实际上是我在某些情况下使用的 hack(比如当你有一个第三方库不像 DalmTo 所说的那样开源时)。
我发现,该按钮位于 <span>
元素中,其中定义了 class:
<span class="gapi-analytics-auth-styles-signinbutton-buttonText">Access Google Analytics</span>
所以我决定用CSS来替换文字:
span.gapi-analytics-auth-styles-signinbutton-buttonText {
visibility: hidden;
}
span.gapi-analytics-auth-styles-signinbutton-buttonText:after {
content: 'Bejelentkezés a Google Analyticsbe';
display: block;
visibility: visible;
padding: 5px;
margin-top: -18px;
margin-left: -13px;
}
现在,ta'da:
1) 没有找到允许更改按钮文本的选项
无论如何,用css
甚至javascript
改变应该没问题
只要能给出想要的结果就可以了
2) 而不是在用户未登录时隐藏 container
...
--> 默认隐藏 container
然后在用户登录时取消隐藏,使用 signIn
事件
例如
<style>
.hidden {
display: none;
visibility: hidden;
}
</style>
<div class="hidden" id="container"></div>
<script>
gapi.analytics.auth.authorize({
userInfoLabel: 'Logged in as: ',
container: 'embed-api-auth-container',
clientid: 'CLIENTID'
});
gapi.analytics.auth.on('signIn', function() {
// un-hide container
document.getElementById('container').className = '';
});
</script>
我的站点中有一个管理页面,我在其中实施了 Google Analytics Embed。一切正常,但我想翻译登录按钮文本:
此按钮由 gapi.analytics.auth.authorize()
我的函数看起来像这样 atm:
gapi.analytics.auth.authorize({
userInfoLabel: 'Logged in as: ',
container: 'embed-api-auth-container',
clientid: 'CLIENTID'
});
我查看了开发人员指南,我发现 userInfoLabel:
正在替换文本“You are logged in as:
”,但我没有找到任何关于如何替换登录文本的信息按钮。
我正在与 Chart.js and Third party visualizations Demo 合作。
登录后我的页面如下所示:
如果未登录则看起来像这样:
问题是:
- 如何替换 "Access Google Analytics" 文本?
- 如何设置
当用户不在时,容器的值为
display:none;
已登录。(容器 ID:'container'
)
编辑:
我试图检查 gapi.analytics.auth.isAuthorized()
我想检查用户是否登录的部分,但它总是给出 false
.
其实我找到了另一种方法来替换那个按钮上的文字,但我不会接受我的回答,希望有人能找到问题的真正答案。
我所做的实际上是我在某些情况下使用的 hack(比如当你有一个第三方库不像 DalmTo 所说的那样开源时)。
我发现,该按钮位于 <span>
元素中,其中定义了 class:
<span class="gapi-analytics-auth-styles-signinbutton-buttonText">Access Google Analytics</span>
所以我决定用CSS来替换文字:
span.gapi-analytics-auth-styles-signinbutton-buttonText {
visibility: hidden;
}
span.gapi-analytics-auth-styles-signinbutton-buttonText:after {
content: 'Bejelentkezés a Google Analyticsbe';
display: block;
visibility: visible;
padding: 5px;
margin-top: -18px;
margin-left: -13px;
}
现在,ta'da:
1) 没有找到允许更改按钮文本的选项
无论如何,用css
甚至javascript
改变应该没问题
只要能给出想要的结果就可以了
2) 而不是在用户未登录时隐藏 container
...
--> 默认隐藏 container
然后在用户登录时取消隐藏,使用 signIn
事件
例如
<style>
.hidden {
display: none;
visibility: hidden;
}
</style>
<div class="hidden" id="container"></div>
<script>
gapi.analytics.auth.authorize({
userInfoLabel: 'Logged in as: ',
container: 'embed-api-auth-container',
clientid: 'CLIENTID'
});
gapi.analytics.auth.on('signIn', function() {
// un-hide container
document.getElementById('container').className = '';
});
</script>