Да, вы можете сделать это в CSS - в основном сделать ваш div шире, чем страница, чтобы исправить слишком закругленные края, а затем левые, чтобы компенсировать, с нижним радиусом границы, используя как x & amp; y и отрицательное нижнее поле для компенсации зазора:
border-bottom-left-radius: 50% 200px; // across half & up 200px at left edge
border-bottom-right-radius: 50% 200px; // across half & up 200px at right edge
width: 160%; overflow: hidden; // make larger, hide side bits
margin-bottom: -50px; // apply negative margin to compensate for bottom gap
position: relative; left:-30%; // re-position whole element so extra is on each side (you may need to add display:block;)
Попробуйте использовать parent () или closest () в комбинации, возможно, с селектором, чтобы определить, какой предок должен совпадать. Например, найдите div ближайшего предка с идентификатором.
$('.click-me').click( function() {
var ancestorId = $(this).closest('div[id]');
alert(ancestorId);
});
Вы ищете parent ()
? Документ jQuery для родительского селектора. Если для вашего сценария он отличается, объясните, каков ваш ожидаемый результат.
http://api.jquery.com/parent / и , http://api.jquery.com/parents /
$(".click-me").click(function(){
var ancestorId = $(this).parent().parent();
alert(ancestorId)
});
возвратит отделения с ids
Я получаю ошибку в ie:
Строка: 16 Ошибка: «undefined» имеет значение null или не является объектом
. Это указывает на следующее:
j=l.replace(/^[\-\d\.]+/,"")
Предполагается, что необходимо проверить значение null? Просто догадка.
-121--3995753- Нет, это не помешает кэшированию прокси-сервера, а также метатегу. Необходимо отправить заголовок HTTP Cache-Control: no-cache
.
http://www.w3.org/Protocols/HTTP/Issues/cache-private.html
См. также: http://www.mnot.net/cache_docs/#META
-121--3643162-Это действительно зависит от того, чего вы хотите достичь. Выполнить поиск всех предков независимо от используемого класса? Или вы хотите искать все элементы, которые являются предками и имеют определенный класс (предок-x в вашем случае)?
Если вы хотите циклически проходить через любых предков, просто используйте .parent () (есть отличный пример, как циклически проходить через все элементы) или .parents ()
$(".click-me").click(function(){
var parentElements = $(this).parents().map(function () {
return this.tagName;
})
// whatever else you want to do with it
});
Возможно, наилучшим подходом будет использование .parents ()
до тех пор, пока не будет получен элемент с определенным идентификатором или классом. Это действительно зависит от того, что ты хочешь сделать.
Вы имеете в виду что-то подобное?
$('.click-me').click(function() {
var $theAncestor = $(this).closest('#ancestor-1');
}
Это будет искать через все родоначальницы до тех пор пока спичка не будет найдена.
http://api.jquery.com/closest/
EDIT:
Джером, ваш вопрос можно интерпретировать несколькими способами. Это говорит к силе и гибкости jQuery.
Пожалуйста, рассмотрите следующее.
Во-первых, чтобы ответить на ваш вопрос, да, можно использовать jQuery для выбора предка элемента.
Думаю, можно предположить, что вы знаете о возможности jQuery выбирать любой элемент, будь то предк или его потомок через:
$('#myElement')
В примере click-me, если вы хотите получить набор всех предков элемента, используйте:
$(this).parents()
или
$(this).parents(selector)
Но имейте в виду, что это пройдет через ВСЕ предки, возвращающие все, или все, что совпадает, когда задан селектор.
Если вы хотите вернуть немедленного родителя, используйте:
$(this).parent()
Если вы знаете, какой родоначальник вам нужен, используйте:
$(this).closest(selector)
Но имейте в виду, что он вернет только первое совпадение, а если текущий элемент (это) совпадает, то вернет это совпадение.
Надеюсь, это поможет.
Попробуйте parent ()
для непосредственного родительского элемента.
$(".click-me").click(function() {
var ancestor = $(this).parent();
alert(ancestor)
});
Или родители ()
для всех совпадающих элементов-предков.
$(".click-me").click(function() {
var ancestors = $(this).parents(".some-ancestor");
alert(ancestors)
});
Или closest ()
для первого наиболее подходящего элемента (либо предка, либо себя).
$(".click-me").click(function() {
var ancestor = $(this).closest(".some-ancestor");
alert(ancestor)
});
Разница между родителями ()
и closest ()
неуловима, но важна. closest ()
вернет текущий элемент, если он совпадает; parent ()
возвращает только предков . Многим не нужна возможность возврата текущего элемента. closest ()
также возвращает только один элемент; parent ()
возвращает все совпадающие элементы.