После еще нескольких копаний я наткнулся на . Нужно ли вызывать ReleaseIntArrayElements для массива, созданного с помощью NewIntArray? с кратким ответом @gerbit:
только для справки:
blockquote>jintArray pixels = env->NewIntArray(width * height); env->DeleteLocalRef(pixels)
Таким образом, очевидно, что при использовании JNI в направлении Java, вызывающем C ++, вам не нужно очищать свои
, поскольку Java обрабатывает это для вас. Однако при вызове из направления C ++ в Java вам необходимо вызвать
Array DeleteLocalRef()
, чтобы предотвратить утечки памяти.
$("a > img").parent() // match all <a><img></a>, select <a> parents
.each( function() // for each link
{
$(this).replaceWith( // replace the <a>
$(this).children().remove() ); // with its detached children.
});
Это должно сделать это:
$('a[id^=a]').each(function() { $(this).replaceWith($(this).html()); });
В плоскости JavaScript это было бы что-то как:
<script type="text/javascript">
window.onload = function(){
var l = document.getElementsByTagName("a");
for(i=0, im=l.length; im>i; i++){
if(l[i].firstChild.tagName == "img"){
l[i].parentNode.replaceChild(l[i].firstChild,l[i]);
}
}
}
</script>