从三个具有相同类名的div元素中选择一个

时间:2018-07-21 17:03:09

标签: javascript html

基本上,我有三个具有相同类名(框)的小div部分,我想选择第二个,以便可以选择另一个p-Tag等。

到目前为止,这是我尝试过的:

func scrollViewDidScroll(_ scrollView: UIScrollView) {

    debugPrint("offset : \(scrollView.contentOffset.x)")
    let x = (1/3) * (scrollView.contentOffset.x) - 1
    debugPrint("X val :\(x)")
}

当然,这是错误的,我没有其他想法。

HTML:

var select = document.querySelectorAll('.clearfix box box');

3 个答案:

答案 0 :(得分:1)

您需要使用类选择器选择元素,然后从所选元素中获取第二个元素:

document.querySelectorAll('.clearfix .box')[1];

这里,document.querySelectorAll将返回类div的{​​{1}} s,然后box将获得第二个。

答案 1 :(得分:0)

使用这样的html设置,您可以使用选择器

.clearfix .box:nth-child(2)

这将在clearfix中获得第二个div,其中的类包含box

let select = document.querySelector('.clearfix .box:nth-child(2)')
let p = document.createElement('p')
p.textContent = 'New p element'
select.appendChild(p)
<div class="clearfix">
  <div class="box"><p>I am div 1</p></div>
  <div class="box"><p>I am div 2</p></div>
</div>

答案 2 :(得分:0)

如果您尝试过该怎么办:

paymentRouter.post('/createUser', (req, res) => {
  console.log('creating user')
  return stripe.customers.create({
    email: req.email,
    source: req.body.token
  })
  .then(customer => {
    console.log(customer)
    return db.collection('users').doc(req.uid)
    .update({
      stripeID: customer.id,
      activeSub: true
    })
  })
  .catch(e => {
    throw new functions.https.HttpsError('unknown', err.message, e);
  })
}

getElementsByClassName 选择文档中所有名为box的类

[1] 选择第二个对象(第一个对象的索引为0)