- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为我的元素使用 Spring-MVC 结构。我在其中设置了静态资源处理,并且我能够很好地访问我的 JSP 页面中的 css、js 和图像。
现在,我正在添加 1 个 js 文件(链接为 JSP 的外部文件),该文件用于为动态创建的元素设置一个背景图像。问题是 - 因为它试图设置 backgroundImage 如下(它在本地浏览器中工作正常),但在服务器上不允许(作为静态资源)。
( function( $ ){
$.fn.speedometer = function( options ){
var $this = $( this );
if ( $this.length > 1 ) {
$this.each( function(){
$( this ).speedometer( options );
});
return $this;
}
var def = {
/* If not specified, look in selector's innerHTML before defaulting to zero. */
percentage : $.trim( $this.html() ) || 0,
scale: 100,
limit: true,
minimum: 0,
maximum: 100,
suffix: ' %',
animate:true,
thisCss: {
position: 'relative', /* Very important to align needle with gague. */
width: '210px',
height: '180px',
padding: '0px',
border: '0px',
fontFamily: 'Arial',
fontWeight: '900',
backgroundImage : "url('./background.jpg')"
---------------
---------------
因此,类似于 JSP(使用 taglib)- 我正在尝试如下设置 backgroundImage:
backgroundImage : "url(<spring:url value='/images/background.jpg'/>)"
这对我不起作用。我被困在这里,尝试了多种方法,但对我没有任何帮助。其中 1 个是:使用 css 类设置 BackgroundImage。我也尝试创建一个类:
.myClass{
background-image: url(<spring:url value='/images/background.jpg'/>);
}
但是调用函数来应用它对我来说是一个很大的挑战。这是完整的 js 代码:
( function( $ ){
$.fn.speedometer = function( options ){
/* A tad bit speedier, plus avoids possible confusion with other $(this) references. */
var $this = $( this );
/* handle multiple selectors */
if ( $this.length > 1 ) {
$this.each( function(){
$( this ).speedometer( options );
});
return $this;
}
var def = {
/* If not specified, look in selector's innerHTML before defaulting to zero. */
percentage : $.trim( $this.html() ) || 0,
scale: 100,
limit: true,
minimum: 0,
maximum: 100,
suffix: ' %',
animate:true,
thisCss: {
position: 'relative', /* Very important to align needle with gague. */
width: '210px',
height: '180px',
padding: '0px',
border: '0px',
fontFamily: 'Arial',
fontWeight: '900',
backgroundImage : "url('./background.jpg')"
},
digitalCss: {
backgroundColor:'black',
borderColor:'#555555 #999999 #999999 #555555',
borderStyle:'solid',
borderWidth:'2px',
color:'white',
fontSize:'14px',
height:'20px',
left:'72px',
padding:'0px',
position:'absolute',
textAlign:'center',
top:'65px',
width:'60px',
zIndex:'10',
lineHeight:'20px',
overflow:'hidden'
}
}
$this.html( '' );
$this.css( def.thisCss );
$.extend( def, options );
/* out of range */
if ( def.limit && ( def.percentage > def.maximum || def.percentage < def.minimum ) ) {
/* the glass cracks */
$this.css( 'backgroundImage' , 'url("./background-broken.jpg")' );
} else {
/* call modified jqcanvas file to generate needle line */
$this.jqcanvas ( function ( canvas, width, height ) {
var ctx = canvas.getContext ( "2d" ),
lingrad, thisWidth;
ctx.lineWidth = 2;
ctx.strokeStyle = "rgb(255,0,0)";
/* point of origin for drawing AND canvas rotation (lines up with middle of the black circle on the image) */
ctx.translate( 105,105 );
ctx.save(); //remember linewidth, strokestyle, and translate
function animate(){
ctx.restore(); //reset ctx.rotate to properly draw clearRect
ctx.save(); //remember this default state again
ctx.clearRect( -105, -105, 300, 300 ); //erase the canvas
/* rotate based on percentage. */
ctx.rotate( i * Math.PI / def.scale );
/* draw the needle */
ctx.beginPath();
ctx.moveTo( -80,0 );
ctx.lineTo( 10,0 );
ctx.stroke();
/* internally remember current needle value */
$this.data('currentPercentage',i);
if ( i != def.percentage ) {
//properly handle fractions
i += Math.abs( def.percentage - i ) < 1 ? def.percentage - i : def.increment;
setTimeout(function(){
animate()
},20);
}
}
/* Are we animating or just displaying the percentage? */
if (def.animate) {
var i = parseInt( $this.data('currentPercentage') ) || 0;
def.increment = ( i < def.percentage ) ? 1 : -1;
} else {
var i = ( def.percentage );
}
animate();
}, { verifySize: false, customClassName: '' } );
}
/* digital percentage displayed in middle of image */
var digitalGauge = $( '<div></div>' );
$this.append( digitalGauge );
digitalGauge.css( def.digitalCss );
digitalGauge.text( def.percentage + def.suffix );
return $this;
}
})( jQuery )
如有任何更好的建议,我们将不胜感激。
最佳答案
我必须解决这个问题!实习生设置背景图片的 JS 代码在某处出现问题。所以,我已经使用 CSS 类加载了背景图像。
关于javascript - Spring MVC - JS文件实习生需要使用CSS加载backgroundImage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54674699/
当前,我们在为 JS 测试套件运行 Intern 测试运行程序时遇到以下错误。 fatal error :CALL_AND_RETRY_LAST 分配失败 - 进程内存不足 此错误发生在任何测试信息通
我在 intern-geezer 中运行了一个测试循环,一百个非常相似的测试中约有二十个成功运行。然后突然: FATAL ERROR ReferenceError: window is not def
为什么 Python 的 intern 只针对字符串内置?应该可以将 intern 扩展到可哈希和可比较的类,对吧? 最佳答案 实习事物的目的是能够通过比较它们的内存地址来比较它们;您确保永远不会创建
使用 Selenium 驱动程序,IE 在 session 之间保持登录状态,而 FF 和 Chrome 则不然。我想根据“已登录”元素 ID 的存在在测试中执行一些附加命令。 如何根据实习生中的条件
我正在使用以下代码运行我的实习生测试 node node_modules/intern/runner.js config=tests/intern 在我的本地计算机上。该应用程序正在使用 Dojo。基
我有一个有2个功能套件的项目,结构是这样的: - /tests --- /sign ------ sign.js --- /buy ------ buy.js --- intern.js - /nod
我有一个结果集,其中包含证券交易所及其所在国家/地区的列表。尽管如此,在我的数据库中,并非每个 Cxchange 都有一个country_id,因此在创建 Exchange 对象时,其中一堆具有cou
我在实习生如何运行测试和尝试测试使用 jQuery 的 AJAX 调用的单元方面遇到了问题。由于 Intern 将测试客户端提供给 WebDriver 服务器(在本例中为 phantomjs --we
我在一个包中加载测试时遇到问题,该包的依赖项是被测试包的 sibling 。 目前提交的乱码在https://github.com/lbod/delite/tree/intern-bforbes-se
我尝试更改完整的 CSS 代码(如样式浏览器)。 第一个解决方案 new_css = ' body {color:#00ff00; } #div { border: 1px solid red; }'
短版:如果调用string.substring(n,m).intern(),字符串表是保留子字符串还是保留原字符串? ...但我不确定这是一个正确的问题,所以这里是长版本: 我正在使用遗留 Java
如何模拟此功能?使用 WaitForDeletedById 似乎是一种有意识的选择,但反过来却不行。 在 ajax 加载后,我如何才能等待页面上存在新元素,而不是不存在新元素? 最佳答案 使用setF
当我尝试从我的测试文件目录中运行实习生测试时看到此错误消息。目录的(相关)结构是: 测试 资源 休息 pickup.js 现金管理.js gitignore intern.js packages.js
我正在为我们构建的具有“只读”功能的自定义下拉控件编写功能测试。我们为此提出的原始测试计划是确保单击下拉菜单时不会绘制“列表”,这是通常会发生的情况。在绘制列表之前,列表的标记并不存在于 DOM 中。
我正在尝试让 intern-cucumber 插件正常工作。我收到以下错误: Error: A plugin named "cucumber" has not been registered at
我在新安装和更新的 Windows 8.1 N x64 VM 上运行 VS2015 CTP6。 Hyper-V support is enabled , hypervisor.cpuid.v0 = "
为简单起见,假设我有以下 DOM 结构: A B C
我对这个本来很简单的问题越来越绝望。 执行: bdd.it('works', function() { return this.remote .get(
我最近开始使用 Intern js 和 Saucelabs 进行 ui 测试。想要在所有浏览器中进行测试,显然 Firefox 也不排除。 这是我的 gruntfile 配置: run
我正在尝试通过运行 headless Chrome 浏览器进行测试来使用 Intern 4 进行功能测试。我相信一切都设置正确,并且最近为 Mac 终端安装了 selenium-server-stan
我是一名优秀的程序员,十分优秀!