Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Javascript根据另一个div设置div的样式?_Javascript_Html_Css - Fatal编程技术网

如何使用Javascript根据另一个div设置div的样式?

如何使用Javascript根据另一个div设置div的样式?,javascript,html,css,Javascript,Html,Css,我这里有一个独特的案例。我有两个div,一个在左边,一个在右边。如何使左div的高度超过右侧div的高度,函数应使高度相等,并隐藏左div的任何文本。因此,如果我计算加载时的偏移量,右侧的偏移量为443 px,左侧的偏移量为583 px,它应该使两个高度相等,并使左侧数据的其余140px高度相等 我创造了一个 var text=document.getElementById('overflow\u text')) 函数挂载(){ var toggleBtn=document.getElemen

我这里有一个独特的案例。我有两个div,一个在左边,一个在右边。如何使左div的高度超过右侧div的高度,函数应使高度相等,并隐藏左div的任何文本。因此,如果我计算加载时的偏移量,右侧的偏移量为443 px,左侧的偏移量为583 px,它应该使两个高度相等,并使左侧数据的其余140px高度相等

我创造了一个

var text=document.getElementById('overflow\u text'))
函数挂载(){
var toggleBtn=document.getElementById('toggle_text'))
var offsetDiv=document.getElementById('offset\u height')
var offsetDivHeight=offsetDiv.offsetHeight+'px'
var textHeight=text.offsetHeight+'px'
console.log(文本高度)
控制台日志(offsetDivHeight)
如果(文本高度>远视){
text.style.maxHeight=offsetDivHeight
text.style.overflow='hidden'
text.style.textOverflow='省略号'
text.style.whiteSpace='nowrap'
}
}
切换文本{
光标:指针;
}

Lorem ipsum dolor sit amet,Concetetur Adipsicing Elite。Phasellus imperdiet,nulla et dictum interdum,nisi lorem egestas vita scelerisque enim ligula venenatis dolor。梅塞纳斯·尼尔斯·埃斯特、尤特丽斯·内克·康格·埃吉特、维塔·马萨拍卖行。乌贼 奥古斯特·阿利奎特前庭。在自由女神维尼那提斯统治下的奥纳雷·图皮斯(ornare turpis)。不要因为怀孕而失去生命。不发酵整粒玉米粥。 这是一条从枕叶到颞叶的道路,是一条通往精英阶层的道路。Phasellus imperdiet,nulla et dictum interdum,nisi lorem egestas vita scelerisque enim ligula venenatis dolor。梅塞纳斯尼斯酒店 康格·埃吉特,维塔·马萨拍卖行。前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭前庭。在自由女神维尼那提斯统治下的奥纳雷·图皮斯(ornare turpis)。不要因为怀孕而失去生命。 不发酵整粒玉米粥。枕侧颞门。这是一条从枕叶到颞叶的道路,是一条通往精英阶层的道路。Phasellus imperdiet,nulla et dictum interdum,nisi lorem egestas 威尼纳提斯多洛之剑。最重要的是,我们必须从临时港口出发,从同一个角度出发,继续发展精英。Phasellus imperdiet,nulla et dictum interdum,nisi lorem egestas 威尼纳提斯多洛之剑。最重要的是,我们必须从临时港口出发,从同一个角度出发,继续发展精英。Phasellus imperdiet,nulla et dictum interdum,nisi lorem egestas 威尼纳提斯多洛之剑。梅塞纳斯尼斯酒店

阅读更多

Lorem ipsum door sit amet,一位杰出的运动员。Phasellus imperdiet,nulla et dictum interdum,nisi lorem egestas vita scelerisque enim ligula venenatis dolor。梅塞纳斯·尼尔斯·埃斯特、尤特丽斯·内克·康格·埃吉特、维塔·马萨拍卖行。乌贼 奥古斯特·阿利奎特前庭。在自由女神维尼那提斯统治下的奥纳雷·图皮斯(ornare turpis)。不要因为怀孕而失去生命。不发酵整粒玉米粥。 这是一条从枕叶到颞叶的道路,是一条通往精英阶层的道路。Phasellus imperdiet,nulla et dictum interdum,nisi lorem egestas vita scelerisque enim ligula venenatis dolor。梅塞纳斯尼斯酒店 埃吉特·泰勒斯·维尼纳提斯孕妇。不发酵整粒玉米粥。这是一条从枕叶到颞叶的道路,是一条通往精英阶层的道路。不可抗拒的饮食、不可食言和不可食言、不可食言和不可食言 威尼纳提斯多洛十字勋章。这是一个非常好的例子。不发酵整粒玉米粥。这是一条从枕叶到颞叶的道路,是一条通往精英阶层的道路。 Phasellus imperdiet,nulla et dictum interdum,nisi lorem egestas vita scelerisque enim ligula venenatis dolor。梅塞纳斯尼斯酒店

if(textHeight>offsetHeight)

offsetHeight
从未定义。你是说
offsetDivHeight

text.style.whiteSpace='nowrap'

如果这样做,div中的所有文本将被限制在一行内

随着这些变化

if(textHeight>offsetHeight)

offsetHeight
从未定义。你是说
offsetDivHeight

text.style.whiteSpace='nowrap'

如果这样做,div中的所有文本将被限制在一行内


通过这些更改。

您的if语句需要使用变量名,
offsetDivHeight
您的if语句需要使用变量名,
offsetDivHeight
解决方案有点棘手,因为如果您的文本有多行,您不能简单地使用
textfolflow:ellipsis
css属性

首先,我们将
left
文本容器的
height
设置为
right
较小的高度。然后我们必须缩小左侧容器中显示的字数。我们从容器的末尾删除单词,直到容器的滚动高度小于或等于容器的高度。 通过这种方式,我们知道容器只有它能够显示的尽可能多的单词,并且限制它不比正确的容器高

function mounted() {
  var leftContainer = document.getElementById('overflow_text')
  var rightContainer = document.getElementById('offset_height')
  var rightOffsetHeight = rightContainer.offsetHeight;
  var leftOffsetHeight = leftContainer.offsetHeight;

  if (leftOffsetHeight > rightOffsetHeight) {
    leftContainer.style.height = rightOffsetHeight + "px"

    var wordArray = leftContainer.innerHTML.split(' ');
    while(leftContainer.scrollHeight > leftContainer.offsetHeight) {
        wordArray.pop();
        leftContainer.innerHTML = wordArray.join(' ') + '...';
     }
  }
}