我試圖做一個「活」的圖像預覽與jQuery,但現在我只有這個想法。因此,這個想法是有一個div(100px/100px)和一個輸入表單,並且當你把鏈接放在div裏時,將圖像「縮小」可視化爲100px/100px。但是如果用戶不準確地複製鏈接並開始要輸入它,代碼應檢查鏈接是否適合圖像(例如.../image.jpg),然後顯示它。我會讓這個div與外部的.attr鏈接形象化,但整個事情對我來說很難。如果有人想幫助,歡迎你:)每幀jquery函數
0
A
回答
1
最簡單的方法並不複雜,只是一個文本框,一個佔位符和一些jQuery代碼。
假設這是文本框:
<input type="text" id="txtImagePreview" />
有預覽本身這樣的容器:
<div id="ImagePlaceHolder"><span class="error">Invalid image URL</span></div>
最後,這是必需的jQuery代碼:
$(document).ready(function() {
var timer = 0;
$("#ImagePlaceHolder .error").hide();
var oPreviewImage = $("<img />");
oPreviewImage.bind("error", function() {
$(this).hide();
$(this).parent().find(".error").show();
});
$("#ImagePlaceHolder").append(oPreviewImage);
oPreviewImage.hide();
$("#txtImagePreview").bind("keyup paste", function() {
window.clearTimeout(timer);
var txtPreview = $(this);
timer = window.setTimeout(function() {
$("#ImagePlaceHolder").find(".error").hide();
var imageURL = txtPreview.val();
oPreviewImage.attr("src", imageURL);
oPreviewImage.show();
}, 500);
});
});
請注意,在URL中檢查「.jpg」是毫無意義的,許多圖片網址沒有任何擴展名,例如您的圖片爲http://www.gravatar.com/avatar/b4a2d7e5c786e61fab787097b2d4f27b?s=32&d=identicon&r=PG
,因爲您看到如果圖片是否是無法單獨通過網址分辨。
邏輯很簡單:將給定的URL分配到<img>
並在佔位符內顯示它。如果圖像對象onerror
觸發它意味着圖像無效,將其隱藏並可選擇顯示自定義友好信息。
使用定時器,原因有二:
新的案文是不是
paste
事件後可用的權利,因此要獲得新的價值的唯一途徑是等待一點時間。當用戶輸入內容時,輸入的每個字符輸入後都沒有指定的位置 - 讓他先完成輸入。
0
相關問題
- 1. 每個函數jquery
- 2. jquery。每個函數
- 3. 每個jQuery函數
- 4. jquery。每個函數
- 5. 每幀性能函數調用
- 6. jQuery的父函數每個函數
- 7. jQuery Animate函數&每個函數
- 8. ActionScript-3調用每個幀的函數,而不必每幀之間都有KeyFrame
- 9. jQuery - preventDefault()in。每個函數
- 10. jQuery的從每個()函數
- 11. JQuery的每個函數?
- 12. JQuery - 中止每個函數
- 13. jquery每個json函數
- 14. jQuery的 「每個」 函數值
- 15. JQuery每個函數索引
- 16. jQuery循環。每個函數
- 17. 應用數據幀返回函數以鹼數據幀中的每一行
- 18. 調用在大熊貓數據幀的每一列的函數
- 19. 將函數應用於矩陣或數據幀的每一行
- 20. 對數據幀的每個值執行函數
- 21. 應用回合函數的每個元素在數據幀
- 22. 應用跨數據幀列函數爲每一行
- 23. 對數據幀的每一行重複函數
- 24. lambda函數在數據幀
- 25. 每個函數內部的Javascript jQuery數組函數
- 26. jQuery每次調用其他函數
- 27. jQuery Ajax等待每個函數
- 28. 的jQuery - 刷新每個()函數
- 29. jQuery。每個函數的幫助
- 30. jquery動態元素的每個函數
非常感謝。這是我想要的:)再次感謝。 –
沒問題,很高興我能幫上忙。 –