Facebook 页面/选项卡中的 javascript [fbjs]
我只是想在 facebook 应用程序(商业)选项卡上使用一些选项卡功能
我有一些基本的 HTML 和 JS [fbjs],这似乎不起作用 我不知道出了什么问题。
<div id="foo">foo div</div>
<script><!--
function changeText(evt){
evt.target.style.display = "none";
}
var foo = document.getElementById('foo');
foo.addEventListener('click',changeText);
//--> </script>
我缺少什么?
I simply want some tabbing functionality on a facebook application (business) tabs
I have some basic HTML and JS [fbjs], this doesn't seem to work
I have no clue whats wrong.
<div id="foo">foo div</div>
<script><!--
function changeText(evt){
evt.target.style.display = "none";
}
var foo = document.getElementById('foo');
foo.addEventListener('click',changeText);
//--> </script>
What am i missing?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
它在 Chrome 中对我有用。您使用什么浏览器?您确定嵌入此代码的页面不包含另一个 id 为“foo”的元素吗?
It works for me in Chrome. What browser are you using? Are you sure the page you are embedding this code in doens't contain another element with id "foo"?
当您在 Facebook 中运行脚本时,Facebook 实际上会更改脚本运行的 JavaScript 和 DOM 环境。 FBJS (Facebook JavaScript) 针对事件和 DOM 元素等内容设置了多个包装器。这意味着像
DOM_Element.style.some_attribute
这样的东西将不起作用。如果您想获取或设置元素的样式,则需要使用DOM_Element .getStyle()
和DOM_Element.setStyle()
相反。事件按照 W3C 指定的方式工作:
来自文档:
Facebook actually alters the JavaScript and DOM environment in which your scripts run when you run them in Facebook. FBJS (Facebook JavaScript) sets up several wrappers around things like events and DOM elements. That means that things like
DOM_Element.style.some_attribute
will not work. If you want to get or set the styles of an element, you're going to need to useDOM_Element.getStyle()
andDOM_Element.setStyle()
instead.Events work like the W3C specifies:
From the docs: