2012-06-07 29 views
1

** **解决JQuery的图标定制和问题与悬停状态

的Chrome显然可以有死亡之握赫克于缓存中的文件。杀死该进程,手动清除缓存,并刷新十几次没有做任何事情。

更改文件名以强制它下载新的东西确实

去图。


** **更新

好了,这是一款Chrome只出现问题。为了回应清除浏览器缓存的建议,我实际上启动了IE 9,因为它从未加载过这个页面。 确实显示悬停状态下的图标。

现在我真的很难过,因为跨平台问题稍微超出了我的薪酬水平。这就是为什么我让JQuery首先为我完成所有繁重的工作! :P


使用最新的1.8.20 JQuery。

需要一个图标如此编辑所有7个主图标PNG文件,并在未使用的空间中添加一个图标。

在相关偏移量的css文件中创建了一个新图标。似乎一切正常,除了悬停状态,这是空白的。

似乎无法通过检查确定在悬停状态下使用了什么文件,但是CSS文件指示一个显示我的自定义图标的png文件。无论如何都已经编辑过。

关闭浏览器并刷新它几次(虽然缓存会阻止我看到它)。

为什么在悬停状态下图标为空?

**为响应反馈**

有没有代码,因为,正如我已经指出,这是在所有其他按钮状态工作。无论如何,这大部分都是在Photoshop中完成的。这似乎是没有必要的,所以我为遗漏道歉。

.ui-icon-dollar { background-position: -160px -144px; } 

这是CSS文件中唯一额外的代码行。其他一切都没有修改。

/* states and images */ 
.ui-icon { width: 16px; height: 16px; background-image: url(/images/ui-icons_0078ae_256x240.png); } 
.ui-widget-content .ui-icon {background-image: url(/images/ui-icons_0078ae_256x240.png); } 
.ui-widget-header .ui-icon {background-image: url(/images/ui-icons_d8e7f3_256x240.png); } 
.ui-state-default .ui-icon { background-image: url(/images/ui-icons_e0fdff_256x240.png); } 
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(/images/ui-icons_056b93_256x240.png); } 
.ui-state-active .ui-icon {background-image: url(/images/ui-icons_f5e175_256x240.png); } 
.ui-state-highlight .ui-icon {background-image: url(/images/ui-icons_f7a50d_256x240.png); } 
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(/images/ui-icons_fcd113_256x240.png); } 

这些是来自JQuery Themeroller的原始CSS行。所有主图标文件都是相同的(除了颜色),并且没有为图标定义多个偏移量。我添加的那一行代码通常都是定义一个图标。

由于它在其他状态下正确显示,我只能假设偏移量是正确的。

现在至于Chrome中的检查工具,它在悬停状态下的span元素上没有任何区别。该背景图像保持不变。

我不知道你可以使用Chrome实时编辑! :) 感谢那。

在悬停状态下实时更改背景图像对按钮本身没有影响。它仍然是空白的....

当然,我正在经历所有这一切,因为使自己的图标是一切都很好,但你不能使用.button来定义任何按钮和回调,而不限于这些主图标文件中有什么。单次调用来激活按钮的所有不同状态,定义标签和回调都非常有用。写更少的代码和所有:)

必须有到按钮图标添加到一个jQuery主题,而且还有他们的框架内开展工作的方式..

+1

它会帮助,如果你可以发布一些代码,所以我们可以得到你想要做什么的想法。话虽如此,我猜你正在使用某种精灵?你在CSS中检查了悬停状态的背景位置是否正确?当你放置一个背景时,你可能会超调,并且当你超出了你的精灵时,最终会出现一个“空白文件”。例如:background-position:-9999px -9999px; –

+0

您是否使用检查工具检查Firebug?即使Chrome的检测也可以让你玩现场背景。 – Yisela

回答

0

这听起来可能很明显,但第一件事,我想当类似的事情发生在我身上的时候是浏览器缓存。为了补救它,我尝试按Ctrl-刷新,或不同的浏览器。我很惊讶它有多频繁的帮助。我希望你的问题很简单。 =]

+0

我已经完全关闭了浏览器几次,正如我所提到的按钮图标出现在不同的状态。 – user1441141

+0

你以某种方式帮助了你。我加载了IE 9,以确保它不会与Chrome中的缓存有关。 IE 9显示正确,但Chrome继续不这样做。 – user1441141

+0

这真的很奇怪。使用任务管理器来确保Chrome完全关闭,并将其彻底关闭,直至缓存和历史记录被关闭...并且仍然没有任何结果。但是,更改文件名以强制解决悬停状态。不知怎的,它对那个缓存有了死亡的控制。 – user1441141