안녕하세요.이 문제에 접근하는 방법을 잘 모르겠습니다. HTML img 요소의 배열을 전달하는 함수가 있습니다. 이 이미지를 통해 빈 "no image"엄지 못을 사용하여 이미지의 SRC 속성을 확인합니다. 그런 다음 img 태그 ALT 속성을 쿼리로 사용하여 이미지 검색을 실행합니다. 그런 다음 검색시 콜백 함수가 Img SRC를 첫 번째 이미지 결과로 바꿉니다.동시 Google 이미지 검색을 실행 순서에 따라 정렬하는 방법은 무엇입니까?
해당 검색 콜백과 올바른 이미지를 일치시키는 데 문제가 있습니다. 지금은 배열을 만들고 반환 된 검색을 이미지의 인덱스와 일치시키는 것입니다. 이미지 나 네트워크 대기 시간의 크기에 따라 여러 검색이 동시에 실행되기 때문에 콜백 기능이 중단되어 이미지가 섞일 수 있습니다.
개별 검색을 html 요소와 쌍으로 연결하는 방법이 필요합니다. searchController와 multiple imageSearch 객체를 사용하면 가능합니까? 다음은
는google.load('search', '1');
function googleFillBlanks(jqueryImages){
//namePairs holds the images matching alt text and attachedCount is used for matching up once the call back is fired
var attachedCount = 0;
var namePairs = [];
function searchComplete(searcher){
if (searcher.results && searcher.results.length > 0) {
var results = searcher.results;
var result = results[0];
$("img[alt='"+namePairs[attachedCount]+"'] ").attr('src', result.tbUrl);
//jqueryImages.get(0).attr('src', result.tbUrl);
attachedCount++;
}
}
var imageSearch = new google.search.ImageSearch();
//restrict image size
imageSearch.setRestriction(google.search.ImageSearch.RESTRICT_IMAGESIZE,
google.search.ImageSearch.IMAGESIZE_SMALL);
imageSearch.setSearchCompleteCallback(this, searchComplete, [imageSearch]);
jqueryImages.each(function(){
if($(this).attr('src').substr(-12,8) == 'no_image')
{
namePairs.push($(this).attr('alt'));
imageSearch.execute($(this).attr('alt'));
}
});
}