从字符串中获取数字并插入到 css 中

我正在研究一个在名为Intrexx的开发平台上使用的 javascript 函数。它有其自身的局限性,但我相信下面的代码应该有效。它应该获取数组中的数字,根据找到的内容计算百分比并返回该百分比以设置进度条的宽度。一切都按预期工作,除了设计部分的改变。任何想法为什么?


function progressBar(){

// get text of navigation (eg: 3 of 28) 

var textProgress = document.getElementById('ID_navigationinfocontrolAB63A4D8').firstElementChild.innerHTML


// get numbers inside above string as array

var a = textProgress.match(/\d+/g).map(Number)


// take numbers in array, calculate percentage of progress, return int

var progressPercentage = parseInt((a[0]*100)/a[1])


// alter design of progress bar

var progressBarDesign = document.getElementById('ID_separatorcontrolC6F8BAC8').parentNode

progressBarDesign.style.width = progressPercentage +'% !important' }

我试图直接编辑元素,但是这和编辑 parentNode 都不起作用。


慕姐4208626
浏览 74回答 2
2回答

蛊毒传说

要设置重要,您可以使用以下语法 progressBarDesign.style.setProperty("width", progressPercentage + '%', "important");或者,如果您可以不使用important当前语法,那么应该可以正常工作。progressBarDesign.style.width = progressPercentage + '%';

慕盖茨4494581

终于设法让它与 jQuery 一起工作。我不知道为什么这行得通而我的初始代码却行不通,但希望对其他人有所帮助。发布与第一次尝试不同的地方    // alter design of progress bar     var progressBarDesign =     document.getElementById('ID_separatorcontrolC6F8BAC8').parentNode    // initialize below function    setCss(progressBarDesign, 'width', progressPercentage + '%')    }    function setCss(oHtmlButton, cssKey, cssValue){    $(oHtmlButton).css(cssKey, cssValue);    }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript