作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想从 YUI 沙箱中获取数据并将其传递给另一个函数。例如,如果我有类似的内容:
YUI().use('node','stylesheet', function (Y)
{
var sheet = Y.StyleSheet('#myStyle');
// Some logic...
var styleSheetText = sheet.getCssText("h1");
});
console.log(styleSheetText); //still undefined
如何在console.log中正确获取值styleSheetText?我现在不知道这是 JavaScript 问题还是 YUI 问题。
最佳答案
两者都是。在 JavaScript 中,您无法在声明变量的函数之外看到变量的值。如果您在 YUI().use() 的回调函数中声明 styleSheetText,则无法在该回调函数之外看到其值。
这也是一个 YUI 问题。 YUI().use() 的回调函数将异步执行,也就是说,执行时间是不可预测的,但它总是在 console.log() 语句执行之后。因此,即使您将 styleSheetText 设置为全局以解决变量可见性问题,它仍然会显示未定义。
通常,您将所有代码放在 YUI().use() 的回调函数中。这将解决这两个问题。
关于javascript - 如何从YUI沙箱获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19790463/
我是一名优秀的程序员,十分优秀!