a) xác định bố cục của văn bản từ những gợi ý sau đây:
Nội dung | Phần...: Từ... đến... |
1. tình cảm của con người với mùa xuân là một qui luật tất yếu, tự nhiên | |
2. Cảnh sắc, không khí của đất trời và lòng người. | |
3. Cảnh sắc riêng của trời đất mùa xuân từ khoảng sau ngày rằm tháng giêng ở miền bắc, |
b) Liệt kê những biện pháp nghệ thuật được sử dụng trong văn bản theo sơ đồ và nêu tác dụng của những biện pháp nghệ thuật đó trong việc biểu đạt tình cảm của con người với mùa xuân
c) Đọc đoạn trích từ "Mùa xuân của tôi đến "mở hội liên hoan, trao đổi những nội dung sau:
(1) Cảnh săc và không khí mùa xuân Hà Nội - đất Bắc, hiện lên trong nỗi nhớ của "người con xa xứ có những nét rất riêng, đó là gì?
(2) Tìm những câu văn diễn tả sức sống diệu kì của mùa xuân trong thiên nhiên và lòng người. Em có đồng cảm cùng tác giả khi cảm nhận về mùa xuân không? Vì sao?
(3) Nhớ về mùa xuân, Vũ Bằng không chỉ dừng lại ở cảnh vật mà còn hướng ngòi bút của mình đến không khí gia đình đón tết:"nhang trầm, đèn nến,... không khí gia đình đoàn tụ êm đềm... làm cho lòng anh ấm lạ ấm lùng". Theo em, những câu văn ấy chứa đựng tâm sự gì của tác giả?
(4) Hãy hoàn chỉnh sơ đồ nghệ thuật tiêu biểu của đoạn văn.
e) Bài văn đã gợi cho em những tình cảm đẹp nào? Em sẽ làm gì để có thể sống thật ý nghĩa với những tình cảm ấy?
ND | phần ...tu ..đến |
1 | P1 từ đầu đến mê luyến mùa xuân |
2 | P2 tiếp theo đến mở hội liên hoan |
3 | P3 phần còn lại |
mik chỉ làm cho bạn phần c thôi.Còn lại bạn tự làm
Trong đoạn văn từ “Tôi yêu sông xanh, núi tím” đến “mở hội liên hoan”, cảnh sắc và không khí mùa xuân Hà Nội và miền Bắc đã được gợi tả qua nhiều chi tiết. Trước hết, tác giả đã gợi tả được cái đặc trưng của thời tiết và khí xuân miền Bắc với “mưa rêu rêu, gió lành lạnh”, như từ mùa đông còn vương lại, nhưng lại có cái ấm áp, tràn ngập của khí xuân, hơi xuân. Những âm thanh như tiếng nhạn kêu, tiếng trống chèo, những câu hát huê tình,…hoà quyện trong làn hương ấm áp của nhang trầm, đèn nến, nhất là cái ấm áp toả ra từ không khí gia đình đoàn tụ…Tất cả gợi lên một nét hương sắc không thể nào phai trong tâm hồn của người xa xứ.
- Bài văn này chỉ là một phần của tùy bút “Tháng giêng mơ về trăng rét ngọt” (tiêu đề của bài do người biên soạn đặt) tuy vậy vẫn có bố cục hoàn chỉnh – ta có thể chia làm ba phần như sau:
+ Phần 1 (từ đầu đến “mê luyến mùa xuân”): say mê mùa xuân là một điều tất yếu tự nhiên.
+ Phần 2 (tiếp đến “mở hội liên hoan”): không khí và cảnh sắc mùa xuân ở Hà Nội.
+ Phần 3 (còn lại): mùa xuân sau rằm tháng giêng.
- Ba phần trên đây kết với nhau khá chặt chẽ, theo dòng cảm xúc hồi tưởng của tác giả.
b)BIỆN PHÁP NGHỆ THUẬT
- Từ ngữ bộc lộ tình cảm trực tiếp: chuộng, càng trìu mến, mê luyến mùa xuân....
- Hình ảnh liên tưởng sóng đôi: Trai với gái, trăng với gió, mẹ yêu con, vợ với chồng
Điệp ngữ: Đừng thương. Để nhấn mạnh ý
=> Tình cảm của con người đối với mùa xuân là một quy luật tất yếu, tự nhiên
a)P1:Từ đầu đến mê luyến mùa xuân
P2:Tôi yêu sông xanh đến mở hội liên hoan
P3:đoạn còn lại
b) Biện pháp nghệ thuật:
* Từ ngữ bộc lộ tình cảm trực tiếp :chuộng ,trìu mến, thương, mê luyến
*Hình ảnh liên tưởng sóng đôi: non nước, bướm hoa, trăng gió, ai cấm đc cô gái còn son, chồng
*Điệp từ: đừng thương
=>Tình cảm con người với mùa xuân là một quy luật tự nhiên, tất yếu không có gì lạ hết,
c)(1)Cảnh sắc và không khí mùa xuân của Hà Nội:
-Cảnh sắc: mưa liêu riêu, gió lành lạnh, có tiếng nhạn kêu trong đêm xanh, có tiếng trống chèo từ xa vọng lại, có câu hát huê tình của cô gái đẹp như thơ mộng,..
(2)Mùa xuân là mùa cây cối đâm chồi nảy lộc, làm khơi dậy sức sống mạnh mẽ trong thiên nhiên và trong lòng của mỗi con người
(3)Không khí mùa xuân đc thể hiện trong khung cảnh gia đình đầm ấm với bàn thờ đèn nến, nhang trầm,...và tình cảm gia đình yêu thương thắm thiết. Những câu văn ấy, cho ta thấy nỗi nhớ da diết về quê hương, về mùa xuân đất Bắc của tác giả
(4)Nghệ thuật:
+Sử dụng từ: từ ngữ chọn lọc, giàu hình ảnh
+Giọng điệu: vừa sôi nổi, vừa tha thiết
+Hình ảnh: gợi cảm, gợi nhiều liên tưởng
+Biện pháp tu từ:điệp ngữ, liệt kê, so sánh
d)Cảnh sắc không khí mùa xuân sau ngày rằm tháng giêng:
+Đào hơi phai nhưng nhụy vẫn còn phong, cỏ không mướt xanh như cuối đông, đầu giêng, nhưng trái lại, lại nức một mùi hương man mác.
+Trời đã hết nồm, mưa xuân bắt đầu thay thế cho mưa phùn, không còn làm cho nền trời đùng đục như màu pha lê mờ,những vệt xanh tươi hiện lên ở trên trời
+Trên giàn thiên lí, vài con ong siêng năng đã bay đi kiếm nhị hoa. Chỉ độ tám chín giờ sáng, trên nền trời trong trong có những làn sáng hồng hồng rung động như cánh con ve mới lột
Sinh hoạt gia đình:
+Thịt mỡ dưa hành đã hết, người ta bắt đầu với bữa cưm giản dị
+Cánh màn điều treo ở đầu bàn thờ ông vải đã hạ xuống từ hôm "hóa vàng" và các trò vui ngày Tết cũng tạm thời kết thúc để nhường chỗ cho cuộc sống êm đềm thương nhật
Lí do tác giả yêu mùa xuân nhất vào thời điểm đó:
+Vì cảnh sắc và không khí mùa xuân cùng với sinh hoạt gia đình có sự thay đổi, chuyển biến tạo nên những nét đẹp rieng biệt
e) Văn bản đã gợi cho em hiểu thêm về vẻ đẹp của mùa xuân trên quê hương miền Bắc, làm em yêu thêm thiên nhiên, trân trọng sự soongts và tận hưởng cái đẹp của cuộc sống
Chúc bn hok tốt !!!
(1) Cảnh sắc, k khí mùa xuân Hà Nội- đất Bắc có những nét riêng: thiên nhiên, khí hậu: mưa riêu riêu, gió lành lạnh
Âm thanh:Có tiếng nhạc kêu, tiếng trống chèo có tiếng hát huê tình ... âm thanh náo nức, rạo rực làm ngây ngất lòng người
Lòng người:
Lúc nào cũng say sưa, căn tràn nhựa sống, máu trong người lan lên như lộc của loài nai
- Thấy thèm khát yêu thương...
-K khí trong mỗi gia đình: êm ấm, đoàn tụ
-Trên bàn thờ có mâm ngũ quả, đèn nến hương trầm ... đc chuẩn bị
a, + Phần 1 (từ đầu đến “mê luyến mùa xuân”)
+ Phần 2 (tiếp đến “mở hội liên hoan)
+ Phần 3 (còn lại)
c, (1)Trong đoạn văn từ “Tôi yêu sông xanh, núi tím” đến “mở hội liên hoan”, cảnh sắc và không khí mùa xuân Hà Nội và miền Bắc đã được gợi tả qua nhiều chi tiết. Trước hết, tác giả đã gợi tả được cái đặc trưng của thời tiết và khí xuân miền Bắc với “mưa rêu rêu, gió lành lạnh”, như từ mùa đông còn vương lại, nhưng lại có cái ấm áp, tràn ngập của khí xuân, hơi xuân. Những âm thanh như tiếng nhạn kêu, tiếng trống chèo, những câu hát huê tình,…hoà quyện trong làn hương ấm áp của nhang trầm, đèn nến, nhất là cái ấm áp toả ra từ không khí gia đình đoàn tụ…Tất cả gợi lên một nét hương sắc không thể nào phai trong tâm hồn của người xa xứ.
Bottom of Form
(2) Sức sống của thiên nhiên, sức sống của con người khi mùa xuân đến.
- Sức sống của thiên nhiên: máu căng lên trong lộc nai, mầm non của cây cối nằm im không chịu được trồi ra thành những cái lá nhỏ li ti, những con vật nằm thu hình một nơi nay bò ra để nhảy nhót kiếm ăn… -
Sức sống của con người: nhựa sống trong người căn lên, tươi trẻ hơn, thêm khao khát yêu thương. -
Tình cảm của tác giả: mở của đi ra ngoài thấy thú giang hồ êm ái như nhung, lòng mình say sưa một cái gì đó.
= > Mùa xuân trong mắt Vũ Bằng là mùa xuân trẻ trung, mùa xuân của thương yêu đằm thắm.
=> Em có đồng cảm với tác giả khi cảm nhận mùa xuân vì em cảm thấy mùa xuân là mùa của sự tươi mới , trẻ trung , đầy sức sống .
(3) Trong nỗi nhớ da diết của một người con xứ Bắc xa quê, tác giả đã tái hiện lại cảnh mùa xuân Bắc Việt với những ấn tượng êm đềm, dịu ngọt, những cảm nhận tinh tế mà chỉ có những người yêu tha thiết quê hương mới có được. Cảnh mùa xuân trên đất Bắc là cả một cuộc giao hoà của trời đất, của lòng người, của sức sống và tình yêu.Top of Form
(4) Sử dụng từ: giàu hình ảnh, giàu tình cảm
Giọng điệu: trìu mến, thiết tha
Hình ảnh: chọn lọc, giàu ý nghĩa
Biện pháp tu từ: điệp ngữ, so sánh, nhân hóa
Bottom of Form
d, -Cảnh sắc, không khí mùa xuân
+ Đào: hơi phai nhưng nhụy vẫn còn phong.
+ Cỏ: không mướt xanh nhưng nức một mùi hương man mác.
+ Mưa xuân: thay thế cho mưa phùn.
+ Bầu trời: hiện lên những làn sáng hồng hồng.
-Sinh hoạt gia đình
+ Bữa cơm: đã trở về giản dị, thịt mỡ dưa hành đã hết.
+Cánh màn điều: treo ở bàn thờ ông vải đã hạ xuống.
+Các trò vui: tạm kết thúc nhường chỗ cho cuộc sống thường nhật.
- Lí do tác giả yêu mùa xuân nhất vào thời điểm đó: qua việc tái hiện những cảnh sắc và không khí mùa xuân.
e, Văn bản gợi cho chúng ta thấy sự quan sát tinh tế của tác giả trong mùa xuân Bắc Việt cùng với sự yêu thiên nhiên, cảnh sắc con người với tình yêu tha thiết, nỗi nhớ và niềm tự hào của mùa xuân Bắc Việt gợi lên trong lòng người đọc nói nhắc nhở, yêu thương của quê hương, đất nước để từ đó thất tỉnh với mọi người ý thức sống, sự nâng niu, trân trọng, những điều bình dị của cuộc sống thanh bình.
phần 1: từ đầu đến mê luyến mùa xuân
phần 2: tiếp theo đến mở hội liên hoan
phần 3: còn lại
mình chỉ biết câu 1 thôi, thông cảm nhé:
phần 1: từ đầu đến mê luyến mùa xuân
phần 2: tiếp theo đến mở hội liên hoan
phần 3: còn lại
chúc bạn học tốt
/ *! * Khởi động v3.3.4 (http://getbootstrap.com) * Bản quyền 2011-2015 Twitter, Inc. * Được cấp phép theo MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * / if ("undefined" == typeof jQuery) đưa ra lỗi mới ("Bootstrap's JavaScript requires jQuery"); + function (a) {"use strict"; var b = a.fn.jquery.split ("") [0] (1) <9 || 1 == b [0] && 9 == b [1] && b [2] <1) ném Lỗi mới ("Bootstrap 's JavaScript yêu cầu phiên bản jQuery 1.9.1 trở lên ")} (jQuery), + function (a) {" sử dụng nghiêm ngặt "; function b () {var a = document.createElement (" bootstrap "), b = {WebkitTransition: webkitTransitionEnd ", MozTransition:" transitionend ", OTransition:" oTransitionEnd otransitionend ", chuyển tiếp:" transitionend "}; cho (var c trong b) if (void 0! == a.style [c]) return (end: b [ c)} return 1} a.fn.emulateTransitionEnd = function (b) {var c = 1, d = this; a (this) .one ("bsTransitionEnd", function () {c =! 0}) (a, b), this}, a (function () (a.support.transition = b (), a.support.transition && (a.event.special.bsTransitionEnd = {bindType: a.support.transition.end, delegateType: a.support.transition.end, handle: function (b) {trả về một b.target) .is (này)? b.handleObj.han dll.apply (this, arguments): void 0}})})} (jQuery), + function (a) {"sử dụng nghiêm ngặt"; function b (b) {return this.each (function () {var c = a, b, b, b, b, b, b, b, b, b, b, c, d, (c)}}} var c = '[data-dismiss = "alert"], d = function (b) {a (b) .on ("click", c, this.close)}; d .VERSION = "3.3.4", d.TRANSITION_DURATION = 150, d.prototype.close = function (b) {chức năng c () {g.detach () kích hoạt ("closed.bs.alert"). )} var e = a (this), f = e.attr ("data-target"), f || (f = e.attr ("href"), f = f && f.replace (/.*(?= (g), g.length || (g = e.closest (". alert")), g (g) = g (g) .trigger (b = a.Event ("close.bs.alert")), b.isDefaultPrevented () || (g.removeClass ("trong"), a.support.transition && g.hasClass ("phai")? g Một ("bsTransitionEnd", c) .emulateTransitionEnd (d.TRANSITION_DURATION): c ())}; var e = a.fn.alert; a.fn.alert = b, a.fn.alert.Constructor = d, a.fn.alert.noConflict = function () {return a.fn.alert = e, this}, a (tài liệu) .on ("click.bs.alert.data-api", c, d.prototype.close )} (jQuery), + function (a) {"sử dụng ("bs.button"), f = "object" == typeof b && b; e || d.data ("bs.button", e = new c (this, f)), "toggle" == b? e.toggle (): b && e.setState (b)})} var c = function ( b, d) {this. $ phần tử = a (b), this.options = a.extend ({}, c.DEFAULTS, d), this.isLoading = 1 1); c.VERSION = "3.3.4" , c.DEFAULTS = {loadingText: "loading ..."}, c.prototype.setState = function (b) {var c = "bị vô hiệu hóa", d = this. $ phần tử, e = d.is ("đầu vào" ) "val": "html", f = d.data (); b = "Text", null == f.resetText && d.data ("resetText", d [e] ()), setTimeout (a.proxy (function () {d [e] (null ==f [b]? this.options [b]: f [b]), "loadingText" == b? (this.isLoading =! 0, d.addClass ( c) .attr (c, c)): this.isLoading && (this.isLoading = 1, d.removeClass (c) .removeAttr (c))}, this), 0)}, c.prototype.toggle = chức năng () {var a =! 0, b = this. $ element.closest ('[data-toggle = "buttons"]'), nếu (b.length) {var c = this. $ element.find ("đầu vào ")," radio "== c.prop (" type ") && (c.prop (" checked ") && this. $ element.hasClass (" active ")? a =! 1: b.find (". ") .removeClass (" active ")), một && c.prop (" checked ",! này. $ element.hasClass ("active")), $ element.attr ("aria-pressed",! this element $ element.hasClass ("active")); a && this. $ phần tử a.fn.button.Constructor = c, a.fn.button.noConflict = function () {return a .fn.button.Constructor = c, a.fn.button.noConflict = function () (trả về một fn.button = d, this}, a (document) .on ("click.bs.button.data-api", '[data-toggle ^ = "nút"]', chức năng (c) {var d = a (c.target); d.hasClass ("btn") || (d = d.closest (".btn")), b.call (d, "toggle"), c.preventDefault ()}). on ("focus.bs.button.data-api blur.bs.button.data-api", '[data-toggle ^ = "nút"]', chức năng (b) {a (b.target) .closest "jQuery", + function (a) {"use strict", function b ("use strict"), chức năng b ( b) {return this.each (function () {var d = a (this), e = d.data ("bs.carousel"), f = a.extend ({}, c.DEFAULTS, d.data ( ), "object" == typeof b && b), g = "string" == typeof b? b: f.slide, e || d.data ("bs.carousel", e = new c (this, f)), , "number" == typeof b? e.to (b): g? e [g] (): f.interval && e.pause () chu kỳ ()})} var c = chức năng (b, c) {this $ phần tử = a (b), điều này. $ chỉ số = thứ là $ element.find ("carousel-indicators"), this.options = c, this.paused = null, this.sliding = null, this.interval = null, this. $ active = null, this. $ items = "null", this.options.keyboard && this.example.ini ("keydown.bs.carousel", a.proxy (this.keydown, this)), "hover" == this.options.pause &&! ("ontouchstart" trong document.documentElement) && this $ element.on ("mouseenter.bs.carousel", a.proxy (this.pause, this)) trên ("mouseleave.bs.carousel", a.proxy (this.cycle, điều này ), c.VERSION = "3.3.4", c.TRANSITION_DURATION = 600, c.DEFAULTS = {Khoảng thời gian: 5e3, tạm dừng: "hover", quấn:! 0, bàn phím:! 0}, c.prototype. keydown = function (a) {if (! / input | textarea / i.test (a.target.tagName)) {switch (a.which) {case 37: this.prev (); break, case 39: this. (this.paused =! 1), this.interval && clearInterval (this.interval), hàm này sẽ được sử dụng để tạo ra các giá trị mặc định. , this.options.interval &&! this.paused && (this.interval = setInterval (a.proxy (this.next, this), this.options.interval), this}, c.prototype.getItemIndex = function (a) { trả lại khoản này $ items = a.pare nt (), this. $ items.index (a || this. $ active)}, c.prototype.getItemForDirection = chức năng (a, b) (var c = this.getItemIndex (b ), d = "prev" == a && 0 === c || "next" == a && c == này $ item.length-1, nếu (d &&! this.options.wrap) return b; var e = " prev "== a -1 -1, f = (c + e)% giá trị này $ item.length, trả về giá trị này $ item.eq (f)}, c.prototype.to = function (a) {var b = this, c = this.getItemIndex (this. $ active = this. $ element.find (". item.active")); return a> this. $ items.length-1 || 0> một void 0 : this.sliding? this. $ element.one ("slid.bs.carousel", function () {b.to (a)}): c == a? this.pause () chu kỳ (): điều này. slide (a> c? "next": "prev", đây. $ items.eq (a))}, c.prototype.pause = chức năng (b) {return b || (this.paused = 0), Điều này sẽ giúp bạn hiểu rõ hơn về các yếu tố này như thế nào: $ element.find ("next, .prev"). length && a.support.transition && (this. $ element.trigger (a.support.transition.end), this.cycle (! 0)) this.interval = clearInterval (this.interval), this}, c.prototype.next = function () {return this.sliding? void 0: this.slide ("next")}, c.prototype.prev = function () {return this.sliding? void 0: this.slide ("prev")}, c.prototype.slide = functi on (b, d) {var e = this. $ element.find (". item.active"), f = d || this.getItemForDirection (b, e), g = this.interval, h = "next" == b "left": "right", i = this; if (f.hasClass ("active")) return this.sliding = 1, var j = f [0], k = a.Event (" slide.bs.carousel ", {relatedTarget: j, direction: h}), nếu (this. $ element.trigger (k), k.isDefaultPrevented ()) {if (this.sliding = 0, g && this.pause () $ this.getItemIndex (f (this) $ this.getItemIndex (f) (this.example) (this.example.example) (this.example) (this.example.conf (), this.exec (). ), l && l.addClass ("active")} var m = a.Event ("slid.bs.carousel", {relatedTarget: j, direction: h}), trả về a.support.transition && this. $ element.hasClass ("slide")? (f.addClass (b), f [0] .offsetWidth, e.addClass (h), f.addClass (h), e.one ("bsTransitionEnd", chức năng () {f.removeClass ("active"), e.removeClass (["active", h] .join ("")), i.sliding =! 1, setTimeout (chức năng () {i. $ element.trigger (m)}, 0)}) emulateTransitionEnd (c.TRANSITION_DURATION)) :( e.removeClass ("hoạt động"), f.addClass ("hoạt động"), this.sliding = ! 1, điều này. $ Element.trig ger (m)), g && this.cycle (), this}}; var d = a.fn.carousel; a.fn.carousel = b, a.fn.carousel.Constructor = c, a.fn.carousel.noConflict = function () {return a.fn.carousel = d, this}; var e = function (c) {var d, e = a (this), f = a (e.attr ("data-target") | | (d) e.attr ("href")) && d.replace (/.* (? = # [^ \ s] + $) /, "")); if (f.hasClass ("carousel")) {var g = a.extend ({}, f.data (), e.data ()), h = e.attr ("data-slide"), h && (g.interval = 1), b (), (), () (), (), (), () , "[data-slide]", e) .on ("click.bs.carousel.data-api", "[data-slide-to]", e), a (cửa sổ) .on ("load" function () {a ('[data-ride = "carousel"]). Mỗi hàm () {var c = a (this); b.call (c, c.data ())})})} (jQuery), + function (a) {"use strict"; function b (b) {var c, d = b.attr ("data-target") || (c = b.attr ("href")) & c c.replace (/.* (? = # [^ \ s] + $) /, ""); return a (d)} function c (b) {return this.each (function () {var c = a (this), e = c.data ("bs.collapse"), f = a.extend ({}, d.DEFAULTS, c.data (), "object" == typeof b && b); e && f.toggle && / hiển thị | ẩn / .test (b) && (f.toggle = 1 ), e || c.data ("bs.collapse", e = new d (this, f)), "string" == typeof b && e [b] ()})} var d = chức năng (b, c) {this.file = a (b), this.options = a.extend ({}, d.DEFAULTS, c), đây $ trigger = a ('[data-toggle = "collapse"] [href = "" # '+ b.id +' "], [data-toggle =" collapse "] [data-target =" # '+ b.id +' "] '), this.transitioning = null, this.options.parent? this $ parent = this.getParent (): this.addAriaAndCollapsedClass (this. $ element, this. $ trigger), this.options.toggle && this.toggle ()}; d.VERSION = "3.3.4", d.TRANSITION_DURATION = 350, d.DEFAULTS = {toggle:! 0}, d.prototype.dimension = function () {var a = this. $ Element.hasClass ("chiều rộng"), trả lại một? "Width": "height"}, d.prototype.show = function () {if (! this.transitioning &&! this. $ element.hasClass ("in")) {var b, e = this. $ parent & & this. $ parent.children (". panel") (".w, .collapsing"); if (! (e && e.length && (b = e.data ("bs.collapse"), b &&b.transitioning))) {var f = a.Event ("hiển thị. (e, "ẩn"), b || e.data ("bscollapse"), nếu (điều này $ element.trigger (f), f.isDefaultPrevented ()) (e & & e.length && (c.call (e, "ẩn" .collapse ", null)); var g = this.dimension (); t (), $ this.rar (), $ this.rar ("collapsing") .cảm ơn bạn rất nhiều. ("thu gọn") [g] (""), "" "" "" "" "" "" "" " , điều này.transitioning = 0, điều này. $ element.trigger ("shown.bs.collapse")}; nếu (! a.support.transition) trả lại h.call (this); var i = a.camelCase ([ (phần tử này được gọi là "b", "bsTransitionEnd", a.proxy (h, this)) emulateTransitionEnd (d.TRANSITION_DURATION) [g] (this. $ element [ 0] [i])}}}}, d.prototype.hide = function () {if (! This.transitioning && this item $ element.hasClass ("in")) {var b = a.Event ("ẩn.bs (phần tử này được gọi là phần tử), nếu (this. $ element.trigger (b), b.isDefaultPrevented ()) {var c = this.dimension (); this element $. )) $ This.setDoc ("collapsed") removeClass ("collapse") attr ("aria-expanded",! 1), điều này $ trigger.addClass ("thu gọn" ) .attr ("aria-expanded",! 1), this.transitioning = 1, var e = function () {this.transitioning = 0, điều này. $ element.removeClass ("collapsing") addClass ("collapse") gây ra ("hidden.bs.collapse")}, trả về a.support.transition? void this. $ phần tử [c] (0) .one "bsTransitionEnd", a.proxy (e, this)) emulateTransitionEnd (d.TRANSITION_DURATION): e.call (this)}}}, d.prototype.toggle = function () {this [this. $ element.hasClass ( "in")? "hide": "show"] ()}, d.prototype.getParent = function () {return a (this.options.parent) .find ('[data-toggle = "collapse" (a, c, d) () () () () () () () () () }, end ()}, d.prototype.addAriaAndCollapsedClass = function (a, b) {var c = a.hasClass ("in"); a.attr ("aria-expanded", c), b (), "craps", c)}, var e = a.fn.collapse; a.fn.collapse = c, a.fn.collapse.Constructor = d, a.fn.collapse.noConflict = function () {return a.fn.collapse = e, this}, a (document) .on ("click.bs.collapse.data-api", '[data-toggle = " (e), (e) e.attr ("data-target") || d.preventDefault (); var f = b (e), g = f.data ( "bs.collap se "), h = g" toggle ": e.data (), c.call (f, h)})} (jQuery), + function (a) {" sử dụng nghiêm ngặt "; function b (b) { b, b, b, b, b, b, b, b, b, b, b = this.http: // e.hasClass ("open") && (e.trigger (b = a.Event ("hide.bs.dropdown", f)), b.isDefaultPrevented () || (d.attr ("aria- mở rộng "," false "), e.removeClass (" open "), trigger (" hidden.bs.dropdown ", f)))}))} chức năng c (b) {var c = b.attr (" dữ liệu (c) & & c.replace (/.* (? = # "), c (c) & c.replace () () () () () () () () () () () () () var c = a (this), d = c.data ("bs.dropdown"); d | c.data ("bs.dropdown", d = new g (this)), "string" == typeof b && d [b] .call (c)})} var e = ".dropdown-backdrop", f = '[data-toggle = "dropdown"]', g = chức năng (b) {a (b) .on (" (e.is ("e.is" ("e.is" ("e.is" ("e.is" msgstr "" " .disabled,: disabled ")) {var f = c (e), g = f.hasClass (" open "); if (b (),! g) (" ontouchstart "trong document.documentElement &&! f.closest ( ".navba r-nav "). </ div> <div class =" dropdown-backdrop "/> '). ("aria-expanded", "true" ("aria-expanded", "true"), "true", "true", "true" và " "), f.toggleClass (" open ") Kích hoạt (" shown.bs.dropdown ", h)} return! 1}}, g.prototype.keydown = chức năng (b) {if (/ (38 | 40 | (B.which) &&! / Input | textarea / i.test (b.target.tagName)) {var d = a (this); if (b.preventDefault (), b.stopPropagation (), d.is (".default,: disabled")) {var e = c (d), g = e.hasClass ("mở"), nếu (! g && 27! = b.which || g && 27 = = b.which) return 27 == b.which && e.find (f) .trigger ("focus"), d.trigger ("click"); var h = "li: không (.disabled): visible a" i = e.find ('[role = "menu"]' + h + ', [role = "listbox"]' + h); if (i.length) {var j = i.index (b.target); 38 == b.which && j> 0 && j -, 40 == b.which && j <i.length-1 && j ++, ~ j || (j = 0), i.eq (j) .trigger ("focus")}}} }, a.fn.dropdown = d, a.fn.dropdown.Constructor = g, a.fn.dropdown.noConflict = function () {return a.fn.dropdown = h, this}, a (document) .on ("click .bs.dropdown.data-api ", b) .on (" click.bs.dropdown.data-api "," .dropdown form ", chức năng (a) {a.stopPropagation ()}) trên (" click .bs.dropdown.data-api ", f, g.prototype.toggle) .on (" keydown.bs.dropdown.data-api ", f, g.prototype.keydown) .on (" keydown.bs.dropdown .data-api ", '[role =" menu "]', g.prototype.keydown) .on (" keydown.bs.dropdown.data-api ", '[role =" listbox "]', g.prototype () () () () () () () () () () () () "bs.modal"), g = a.extend ({}, c.DEFAULTS, e.data (), "object" == typeof b && b), f || e.data ("bs.modal", f = new c (this, g)), "string" == typeof b? f [b] (d): g.show && f.show (d)})} var c = chức năng (b, c) {this.options = c: $ body = a (document.body), this. $ element = a (b), this. $ dialog = this. $ element.find ("modal-dialog"), điều này. $ backdrop = null , this.isShown = null, this.originalBodyPad = null, this.scrollbarWidth = 0, this.ignoreBackdropClick =! 1, this.options.remote && this. $ element.find ("modal-content") tải (this.options .remote, a.proxy (function () {this. $ element.trigger ("loaded.bs ), c.VERSION = "3.3.4", c.TRANSITION_DURATION = 300, c.BACKDROP_TRANSITION_DURATION = 150, c.DEFAULTS = (phông nền:! 0, bàn phím:! 0, hiển thị: 0}, c.prototype.toggle = function (a) (trả về this.show? This.hide (): this.show (a)}, c.prototype.show = chức năng (b) {var d = this, e = a.Event ("show.bs.modal", {relatedTarget: b}), đây. $ element.trigger (e), this.isShown || e.isDefaultPrevented () || (this.isShown = 0 , this.checkScrollbar (), this.setScrollbar (), this. $ body.addClass ("modal-open"), this.escape (), this.resize (), điều này. $ element.on ("click.dismiss , ".modal", '[data-dismiss = "modal"]', a.proxy (this.hide, this)), điều này. $ dialog.on ("mousedown.dismiss.bs.modal", chức năng () {d. $ element.one ("mouseup.dismiss.bs.modal", function (b) {a (b.target) .is (d. $ phần tử) && (d.ignoreBackdropClick =! 0)})}) , this.backdrop (function () {var e = a.support.transition && d. $ element.hasClass ("fade"); d. $ element.parent () chiều dài || d. $ phần tử.appendTo (d. $ (phần tử), d. $ element.show () scrollTop (0), d.adjustDialog (), e &&. $ phần tử [0] .offsetWidth, d. $ element.addClass ("in") attr ("aria -hidden ",! 1), d.enforceFocus (); var f = a.Event (" shown.bs.modal ", {relatedTarget: b}); e? d. $ dialog.one (" bsTransitionEnd ", chức năng () {d. $ element.trigger ("focus") trigger (f)}) emulateTransitionEnd (c.TRANSITION_DURATION): d. $ element.trigger ("tập trung") kích hoạt (f)}))}, c.prototype.hide = function (b) {b && b.preventDefault (), b = a.Event ("hide.bs.modal"), điều này. $ element.trigger (b), this.isShown &&! b.isDefaultPrevented ( ) && (this.isShown = 1, this.escape (), this.resize (), a (tài liệu) .off ("focusin.bs.modal"), điều này. $ element.removeClass ("in"). ("mouseup.dismiss.bs.modal"), điều này. $ dialog.off ("mousedown.dismiss. bs.TransitionEnd ", a.proxy (this.hideModal, this)) emulateTransitionEnd (c.TRANSITION_DURATION"), a.support.transition && this. ): this.hideModal ())}, c.prototype.enforceFocus = function () {a (tài liệu) .off ("focusin.bs.modal") trên ("focusin.bs.modal", a.proxy ( function (a) {this. $ phần tử [0] === a.target || this. $ element.has (a.target) .length | Trong phần này chúng tôi sẽ giới thiệu cho các bạn về các thành phần chính của phần này: $ element.trigger ("focus")}, this))}, c.prototype.escape = function () {this.isShown && this.options.keyboard? this element.on ("keydown.dismiss.bs .modal ", a.proxy (function (a) {27 == a.which && this.hide ()}, this)): this.isShown || this. $ element.off (" keydown.dismiss.bs.modal " ), c.prototype.resize = function () {this.isShown? a (window) .on ("resize.bs.modal", a.proxy (this.handleUpdate, this)): a (cửa sổ) .off ("resize.bs.modal")}, c.prototype.hideModal = function () {var a = this; this. $ element.hide (), this.backdrop (function () {a. $ body.removeClass ( "modal-open"), a.resetAdjustments (), a.resetScrollbar (), a. $ element.trigger ("hidden.bs.modal")})}, c.prototype.removeBackdrop = function () {this. $ backdrop && this $ backdrop.remove (), this. $ backdrop = null}, c.prototype.backdrop = function (b) {var d = this, e = this. $ element.hasClass ("fade")? "if (this.isShown && this.options.backdrop) {var f = a.support.transition && e; if (this. $ backdrop = a ('<div class =" modal-backdrop' + e + '"/> ') .appendTo (this. $ body), this. $ element.on ("click.dismiss.bs.modal", a.proxy (fu nction (a) {return this.ignoreBackdropClick? void (this.ignoreBackdropClick =! 1): void (a.target === a.currentTarget && ("tĩnh" == this.options.backdrop này này $ phần tử [0] (), this), f && this. $ backdrop [0] .offsetWidth, this. $ backdrop.addClass ("in") ,! b) return; f? this. $ backdrop.one ("bsTransitionEnd", b) .emulateTransitionEnd (c.BACKDROP_TRANSITION_DURATION): b ()} else if (! this.isShown && this. $ backdrop) {this. $ backdrop.removeClass ("in"); var g = function () bdb.ini ("bsTransitionEnd", g) .emulateTransitionEnd (c.BACKDROP_TRANSITION_DURATION), nếu bạn không muốn sử dụng nó, : g ()} else b && b ()}, c.prototype.handleUpdate = function () {this.adjustDialog ()}, c.prototype.adjustDialog = function () {var a = this. $ phần tử [0] .scrollHeight > $ element.css (this paddingLeft:! this.bodyIsOverflowing && a? this.scrollbarWidth: "", paddingRight: this.bodyIsOverflowing &&! a? this.scrollbarWidth: ""})}, c.prototype .resetAdjustments = function () {this. $ () {var b = document.documentElement.getBoundingClientRect (if (! a)) {var b = document.documentElement.getBoundingClientRect (nếu có thể, hãy chắc chắn rằng bạn đã tạo ra một tập tin văn bản) ); a = b.right-Math.abs (b.left)} this.bodyIsOverflowing = document.body.clientWidth <a, this.scrollbarWidth = this.measureScrollbar ()}, c.prototype.setScrollbar = chức năng () { var a = parseInt (this. $ body.css ("padding-right") || 0,10); this.originalBodyPad = document.body.style.paddingRight || "", this.bodyIsOverflowing && this.EXC body.css ( "padding-right", a + this.scrollbarWidth)}, c.prototype.resetScrollbar = function () {this. $ body.css ("padding-right", this.originalBodyPad)}, c.prototype.measureScrollbar = chức năng () {var a = document.createElement ("div"); a.className = "modal-scrollbar-measure", đây. $ body.append (a); var b = a.offsetWidth-a.clientWidth; $ body [0] .removeChild (a), b}; var d = a.fn.modal; a.fn.modal = b, a.fn.modal.Constructor = c, a.fn.modal.noConflict = function () {return a.fn.modal = d, this}, a (tài liệu) .on ("click.bs.modal.data-api", '[data-toggle = "modal"]' (), e = d.attr ("href"), f = a (d.attr ("mục tiêu dữ liệu") || e && e.replace (/.*(?= ("remote"! / # /. test (e) && e ">"), g = f.data ("bs.modal")? "toggle": a.extend }, f.data (), d.data ()), d.is ("a") && c.preventDefault (), f.one ("show.bs.modal", chức năng (a) {a.isDefaultPrevented ( ) f.one ("hidden.bs.modal", function () {d.is (": visible") && d.trigger ("focus")})}), b.call (f, g, this )} () () () () () () () () () () () .tooltip "), f =" object "== typeof b && b, (e || / hủy | ẩn / .test (b)) && (e || d.data (" bs.tooltip ", e = new c (this, f)), "string" == typeof b && e [b] ())}}} var c = function (a, b) {this.type = null, this.options = null, this.enabled = null , this.timeout = null, this.hoverState = null, this. $ phần tử = null, this.init ("tooltip", a, b)}; c.VERSION = "3.3.4", c.TRANSITION_DURATION = 150, c: <div class = "tooltip-arrow"> </ div> <div class = "" </ div> <div class = "story_text"> </ div> <div class = 'story_text' > <div class = "tooltip-inner"> </ div> </ div> ', kích hoạt: "di chuột foc chúng ta ", title:" ", delay: 0, html: 1, container:! 1, viewport: (selector:" body ", padding: 0}}, c.prototype.init = function (b, c, d ) $ this_type = b, this. $ phần tử = a (c), this.options = this.getOptions (d), đây $ viewport = this.options.viewport && a (điều này (tùy chọn «selector» phải được xác định khi khởi tạo "+ this .type + "trên đối tượng window.document!"), cho (var e = this.options.trigger.split (""), f = e.length; f -;) {var g = e [f]; if ("click" ==g) này $ element.on ("click." + this.type, this.options.selector, a.proxy (this.toggle, this)), nếu như vậy ("manual"! = "g", "g", "g", "g", "g", "g", "g" + this.type, this.options.selector, a.proxy (this.enter, this)), điều này. $ element.on (i + "." + this.type, this.options.selector, a.proxy (điều này (), this.options, {trigger: "manual", selector: "" msgstr "" "% s" msgstr "" " }): this.fixTitle ()}, c.prototype.getDefaults = function () {return c.DEFAULTS}, c.prototype.getOptions = function (b) {return b = a.extend ({}, this.getDefaults (), this $ element.data (), b), b.delay && "number" == typeof b.delay && (b.delay = (hiển thị: b.delay, ẩn: b.delay}), b}, (), c (a, d) {c [a]! = d && ((a, d)) trả về this._options && a.each (this._options, function (a, d)), c = this.getDefaults (); (b.currentTarget) .data ("bs." + this () b) a) b) a) b) c) .type), return c && c. $ tip && c. $ tip.is (": visible")? void (c.hoverState = "trong") :( c || (c = new this.constructor (b.currentTarget, this. getDelegateOptions ()), a (b.currentTarget) .data ("bs." + this.type, c)), clearTimeout (c.timeout), c.hoverState = "trong", c.options.delay &&c.options. delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c. prototype.leave = function (b) {var c = b instanceof this.constructor? b: a (b.currentTarget) .data ("bs." + this.type); return c || (c mới này (c)), clearTimeout (c.timeout), c.hoverState = "ra" ("ra"), , c.options.delay && c.options.delay.hide void (c.timeout = setTimeout (function () {"out" == c.hoverState && c.hide ()}, c.options.delay.hide): c (this.type); if (this.hasContent () && this.enabled) {this. $ () .hidden ()}, c.prototype.show = function () {var b = a.Event ("show.bs." + this.type); (element.trigger (b); var d = a.contains (this. $ phần tử [0] .ownerDocument.documentElement, this. $ phần tử [0]; nếu (b.isDefaultPrevented () || d) return; var e = this, f = this.tip (), g = this.getUID (this.type), this.setContent (), f.attr ("id", g), điều này. $ element.attr ("aria- mô tả bằng ", g), this.options.animation && f.addClass (" fade "); var h =" function "== typeof this.options.placement? this.options.placement.call (this, f [0], this . $ element [0]: this.options.placement, i = / \ s? tự động? \ s? /i,j=i.test (h); j && (h = h.replace (i, "") ("bs." + this.type, this), thêm vào " , this.options.container? f.appendTo (th is.options.container): f.insertAfter (this. $ element), var k = this.getPosition (), l = f [0] .offsetWidth, m = f [0] .tuyệt tức, nếu (j) {var n = h, o = this.options.container? a (this.options.container): this. $ element.parent (), p = this.getPosition (o); h = "phía dưới" == h && k.bottom + m> p.bottom "top": "top" == h && k.top-m <p.top? "bottom": "right" == h && k.right + l> p.width? "left": "trái "== h && k.left-l <p.left?" right ": h, f.removeClass (n) .addClass (h)} var q = this.getCalculatedOffset (h, k, l, m); this.applyPlacement (q, h); var r = function () {var a = ehoverState; e. $ element.trigger ("shown.bs." + e.type), e.hoverState = null, "out" == a && e.leave (e)} a.support.transition && this $ tip.hasClass ("fade")? f.one ("bsTransitionEnd", r) .emulateTransitionEnd (c.TRANSITION_DURATION): r ()}}, c. prototype.applyPlacement = function (b, c) {var d = this.tip (), e = d [0] .offsetWidth, f = d [0] .offsetHeight, g = parseInt (d.css ("margin-top "), 10), h = parseInt (d.css (" margin-left "), 10); isNaN (g) && (g = 0), isNaN (h) && (h = 0), b.top = b.top + g, b.left = b.left + h, a.offset.setOffset (d [0], a.extend ({sử dụng: chức năng (a) {d.css ({đầu trang : Math.round (a.top)}}}}, b), 0), d.addClass ("in"), var i = d [0] .offsetWidth, j = d [0] .offsetHeight; "top" == c && j! = f && (b.top = b.top + fj); var k = this.getViewportAdjustedDelta (c, b, i, j); k.left? b.left + = k.left: b.top + = k.top; var l = / top | bottom / .test (c), m = l? 2 * k.left-e + i: 2 * k.top- f + j, n = l "offsetWidth": "offsetHeight"; d.offset (b), this.replaceArrow (m, d [0] [n], l)}, c.prototype.replaceArrow = chức năng (a , "b", "b", "b", "b", "b", "b", "b", "b", "c" , "")}, c.prototype.setContent = function () {var a = this.tip (), b = this.getTitle (); a.find ("tooltip-inner") [this.options.html ? "html": "text"] (b), a.removeClass ("biến mất ở dưới cùng bên trái bên phải")}, c.prototype.hide = function (b) {function d () {"in"! = e .hoverState && f.detach (), e. $ element.removeAttr ("aria-describedby") Kích hoạt ("hidden.bs." + e.type), b && b ()} var e = this, f = a (điều này. $ tip), g = a.Event ("hide.bs." + this.type), trả về giá trị này $ element.trigger (g), g.isDefaultPrevented ()? void 0: (f.removeClass ("in" ), a.support.transition && f.hasClass ("fade")? f.one ("bsTransiti onEnd ", d) .emulateTransitionEnd (c.TRANSITION_DURATION): d (), this.hoverState = null, this)}, c.prototype.fixTitle = function () {var a = this. $ phần tử; (a.attr ( "title") || "string"! = typeof a.attr ("data-original-title")) && a.attr ("data-original-title", a.attr ("title") || "") (), c.prototype.hasContent = function () {return this.getTitle ()}, c.prototype.getPosition = chức năng (b) {b = b || này. $ phần tử ; var c = b [0], d = "BODY" == c.tagName, e = c.getBoundingClientRect (); null == e. chiều rộng: e.right-e.left, height: e.bottom-e.top}); var f = d? {top: 0, left: 0 }: b.offset (), g = {scroll: d? document.documentElement.scrollTop || document.body.scrollTop: b.scrollTop ()}, h = d? {width: a (window) .width () (a, b, c, d) {a, b, c, d} a, b, c, d} trả về "bottom" == a? {top: b.top + b.height, left: b.left + b.width / 2-c / 2}: "top" == a? {top: b.top- d, trái: b.left + b.width / 2-c / 2}: "left" == a? {top: b.top + b.height / 2-d / 2, trái: b.left-c }: {top: b.top + b.height / 2-d / 2, left: b.left + b.width}}, c.prototype.getViewportAdjustedDelta = chức năng (a, b, c, d) {var e = {top: 0, left: 0}; if (! this. $ viewport) return e; var f = this.options.viewport && this.options.viewport.padding || 0, g = this.getPosition (this. $ viewport ), if (/ right|left/.test (a)) {var h = b.top-fg.scroll, i = b.top + fg.scroll + d; h <g.top?e.top=g .top-h: i> g.top + g.height && (e.top = g.top + g.height-i)} else {var j = b.left-f, k = b.left + f + c ; j <g.left? e.left = g.left-j: k> g.width && (e.left = g.left + g.width-k)} return e}, c.prototype.getTi background = function () {var a, b = this. $ phần tử, c = this.options; trả về một = b.attr ("data-original-title") || ("function" == typeof c.title? c.title.call (b [0]): c.title)}, c.prototype.getUID = function (a) {do a + = ~~ (1e6 * Math.random ()), trong khi (document.getElementById ( a)), return a}, c.prototype.tip = function () {return this $ tip = this. $ tip || a (this.options.template)}, c.prototype.arrow = function () { trả về giá trị này $ arrow = this. $ arrow || this.tip () tìm thấy ("tooltip-arrow")}, c.prototype.enable = function () {this.enabled =! 0}, c.prototype .docable = function () {this.enabled =! 1}, c.prototype.toggleEnabled = function () {this.enabled =! this.enabled}, c.prototype.toggle = chức năng (b) (var c = this ; b && (c = a (b.currentTarget) .data ("bs." + this.type), c || (c = new this.constructor (b.currentTarget, this.getDelegateOptions ()), a (b. currentTarget) .data ("bs." + this.type, c))), c.tip () .Class ("in")? c.leave (c): c.enter (c)}, c.prototype .destroy = function () {var a = this; clearTimeout (this.timeout), this.hide (function () {a. $ element.off ("." + a.type) .removeData ("bs." + a.type)})}; var d = a.fn.toolt ip; a.fn.tooltip = b, a.fn.tooltip.Constructor = c, a.fn.tooltip.noConflict = function () {trả về a.fn.tooltip = d, this}} (jQuery), + chức năng (a) {"use strict", function b (b) {return this.each (function () {var d = a (this), e = d.data ("bs.popover"), f = "đối tượng" == typeof b && b, (e ||! / destroy | hide / .test (b)) && (e || d.data ("bs.popover", e = new c (this, f)), "string" == typeof b && e [b] ())}}} var c = function (a, b) {this.init ("popover", a, b)}; if (! a.fn.tooltip) đưa ra lỗi mới "Popover require tooltip.js"); c.VERSION = "3.3.4", c.DEFAULTS = a.extend ({}, a.fn.tooltip.Constructor.DEFAULTS, {placement: "right", kích hoạt: " click ", nội dung:" ", template: '<div class =" popover "role =" tooltip "> <div class =" mũi tên "> </ h3> <h3 class =" popover-title "> </ h3> <div class = "story_text"> </ div> </ div> '), c.prototype = a.extend ({}, a.fn.tooltip.Constructor.prototype), c.prototype.constructor = c, c.prototype.getDefaults = function () {return c.DEFAULTS}, c.prototype.setContent = function () {var a = this.tip (), b = this.getTitle (), c = this.getContent (); a.find (".document-popover") [this.options.html? "ht ml ":" text "] (b), a.find (" .windows-content ") children () .drewach () end () [this.options.html?" string "== typeof c?" html ":" append ":" text "] (c), a.removeClass (" giảm dần trên dưới cùng bên trái bên phải "), a.find (" .document ") .html () || a.find ( ".option-title"). hide ()}, c.prototype.hasContent = function () {return this.getTitle () || this.getContent ()}, c.prototype.getContent = function () {var a = "this.options; return a.attr (" data-content ") || (" function "== typeof b.content? b.content.call (a [0]): b. content)}, c.prototype.arrow = function () {return this. $ arrow = this. $ arrow || this.tip () tìm thấy (".")}; var d = a.fn.popover; a.fn.popover = b, a.fn.popover.Constructor = c, a.fn.popover.noConflict = function () {return a.fn.popover = d, this}} (jQuery), + function (a )}}}}}}}}}}}}}}}}}}}}}}}}}}}}} {} , this.options = a.extend ({}, b.DEFAULTS, d), this.selector = (this.options.target || "") + ".nav li> a", this.offsets = [] this.targets = [], this.activeTarget = null, this.scrollHeight = 0, (), this.process ()} function c (c) {return this.each (this.process, this)), this.refresh (), this.process ()} function c (c) (return this.each (this.process, this) ("bs.scrollspy"), e = d.data ("bs.scrollspy"), f = "đối tượng" == loại c && c, e || d.data ("bs.scrollspy", e = new b (this, f)), "string" == typeof c && e [c] ()})} b.VERSION = "3.3.4", b.DEFAULTS = {offset: 10}, b.prototype.getScrollHeight = function () {var b () {}}}}}}}}}}} {var b = this, c = "offset", d = 0, this.offsets = [], this.targets = [], this.scrollHeight = this.getScrollHeight (), a.isWindow (này $ scrollElement [0]) | () () () () {var b = a (this), e = b. data ("target") || b.attr ("href"), f = / ^ # ./. test (e) && a (e); trả lại f && f.length && f.is (": visible") && [[f (a, b) {trả về a [0] -b [0]}) each (function () {b.offsets .push (this [0]), b.targets.push (this [1])})}, b.prototype.process = function () {var a, b = this. $ scrollElement.scrollTop () + this.options.offset, c = this.getScrollHeight (), d = this.options.offset + c-this. $ scrollElement.height ( ), e = this.offsets, f = this.targets, g = this.activeTarget; if (this.scrollHeight! = c && this.refresh (), b> = d) return g! = (a = f [f.length -1]) && this.activate (a); if (g && b <e [0]) trả về this.activeTarget = null, this.clear (); for (a = e.length; a -;) g! = F [a] && b> = e [a] && (void 0 === e [a + 1] || b <e [a + 1]) && this.activate (f [a])}, b.prototype.activate = '' this.selector '', '+ this.selector +' [href = "'+ + ("li"), d = a (c) .parents ("li"). dropdown "), addClass (" active ")), d.trigger (" activate.bs.scrollspy ")}, b.prototype.clear = function () {a (this.selector) .parentsUntil (this.options.target , a.fn.scrollspy = c, a.fn.scrollspy.Constructor = b, a.fn.scrollspy.noConflict = b, a.fn.scrollspy.noConflict = b, a.fn.scrollspy.noConflict = function () {return a.fn.scrollspy = d, this}, a (window) .on ("loa d.bs.scrollspy.data-api ", function () {a ('[data-spy =" scroll "]') Mỗi một hàm () {var b = a (this); c.call (b, () () () () () () () () () () () () () = "" ("bs.tab"); e || d.data ("bs.tab", e = new c (this)), "string" == typeof b && e [b] ()})} var c = function (b) {this.element = a (b)}; c.VERSION = "3.3.4", c.TRANSITION_DURATION = 150, c.prototype.show = function () {var b = this.element, c = b.closest ("ul: not (.dropdown-menu)"), d = b.data ("target"), nếu (d || (d = b.attr ("href"), d = d && d , "b.parent (" li ") hasClass (" active ")) {var e = c.find ( ". active: last a"), f = a.Event ("hide.bs.tab", {relatedTarget: b [0]}), g = a.Event ("show.bs.tab", {relatedTarget: e [0]}); nếu (e.trigger (f), b.trigger (g) ,!g.isDefaultPrevented () &&! f.isDefaultPrevented () & {var h = a (d); this.activate (b.closest ("li" ), this.activate (h, h.parent (), function () {e.trigger ({type: "hidden.bs.tab", relatedTarget: b [0]}), b.trigger ({ type: "shown.bs.tab", associatedTarget: e [0]})})}}}, c.prototype.activate = chức năng (b, d, e) {chức năng f () {g.removeClass ("hoạt động "") .find ("> .dropdown-menu> .active") removeClass ("active") kết thúc () tìm ('[data-toggle = "tab"]') attr ("aria-expanded" , (1), b.addClass ("active") Tìm ('[data-toggle = "tab"]') attr ("aria-expanded",! 0), h? (B [0] .offsetWidth , b.addClass ("in")): b.removeClass ("fade"), b.parent (".dropdown-menu") .dòng dài && b.closest ("li.dropdown") addClass ("active"). kết thúc () tìm thấy ('[data-toggle = "tab"]') attr ("aria-expanded",! 0), e && e ()} var g = d.find ("> .active"), h = e && a.support.transition && (g.length && g.hasClass ("fade") || !! d.find ("> .fade"). Length); g.length && h? g.one ("bsTransitionEnd", f). emulateTransitionEnd (c.TRANSITION_DURATION): f (), g.removeClass ("in")}; var d = a.fn.tab; a.fn.tab = b, a.fn.tab.Const Cú pháp: c = c, a.fn.tab.noConflict = function () {return a.fn.tab = d, this}; var e = function (c) {c.preventDefault (), b.call (a (this) , "show")}; a (document) .on ("click.bs.tab.data-api", '[data-toggle = "tab"]', e) .on ("click.bs.tab. data-api "," [data-toggle = "pill"] ', e)} (jQuery), + function (a) {"sử dụng nghiêm ngặt"; function b (b) {return this.each (function () { var d = a (this), e = d.data ("bs.affix"), f = "object" == typeof b && b, e || d.data ("bs.affix", e = new c (điều này , f)), "string" == typeof b && e [b] ()})} var c = function (b, d) {this.options = a.extend ({}, c.DEFAULTS, d), điều này. $ target = a (this.options.target) .on ("scroll.bs.affix.data-api", a.proxy (this.checkPosition, this)). vào ("click.bs.affix.data-api ", a.proxy (this.checkPositionWithEventLoop, this)), this. $ phần tử = a (b), this.affixed = null, this.unpin = null, this.pinnedOffset = null, this.checkPosition ()}; c .VERSION = "3.3.4", c.RESET = "đóng affix-top affix-bottom", c.DEFAULTS = {offset: 0, target: window}, c.prototype.getState = chức năng (a, b, c , if (null! = c), if (null! = c), if (null! = c). && "top" == this.affixed) return c> e "top": 1, if ("bottom" == this.affixed) return null! = c? e + this.unpin <= f.top? 1: "bottom": ad> = e + g? 1: "bottom"; var h = null == this.affixed, i = h? E: f.top, j = h? G: b; return null! = c && c> = e "top": null! = d && i + j> = ad? "bottom":! 1}, c.prototype.getPinnedOffset = function () {if (this.pinnedOffset) trả lại this.pinnedOffset , $ this.value (), this.example (), this.example (), this.example (); top-a}, c.prototype.checkPositionWithEventLoop = function () {setTimeout (a.proxy (this.checkPosition, this), 1)}, c.prototype.checkPosition = function () {if (this. $ element.is (": visible")) {var b = this. $ element.height (), d = this.options.offset, e = d.top, f = d.bottom, g = a (document.body) .height () = typeof d && (f = e = d), "function" == typeof e && (e = d.top (this. $ element)), "function" == typeof f && (f = d .bottom (this. $ element)); var h = this.getState (g, b, e, f), if (this.affixed! = h) (null! = this.unpin && this.profil.css ("top "," "); var i =" affix "+ (h?" - "+ h:" "), j = a.Event (i +" .bs.affix "this.getPin =" bottom "== h? this.getPinnedOffset (): null, this."), nếu (điều này $ element.trigger (j), j.isDefaultPrevented ()) return; this.affixed = h, this.unpin = "bottom" == h? $ element.removeClass (c.RESET) .addClass (i) .trigger (i.replace ("affix", "affixed") + ".bs.affix")} "bottom" == h && này. $ element.offset ( {top: gbf})}}; var d = a.fn.affix; a.fn.affix = b, a.fn.affix.Constructor = c, a.fn.affix.noConflict = function () {return a .fn.affix = d, this}, a (window) .on ("load", function () {a ('[data-spy = "affix"]'). Mỗi hàm () (var c = a (this), d = c.data (); d.offset = d.offset || {}, null! = d.offsetBottom && (d.offset.bottom = d.offsetBottom), null! = d.offsetTop && (d .offset.top = d.offsetTop), b.call (c, d)})})} (jQuery);
Trong đoạn văn từ “Tôi yêu sông xanh, núi tím” đến “mở hội liên hoan”, cảnh sắc và không khí mùa xuân Hà Nội và miền Bắc đã được gợi tả qua nhiều chi tiết. Trước hết, tác giả đã gợi tả được cái đặc trưng của thời tiết và khí xuân miền Bắc với “mưa rêu rêu, gió lành lạnh”, như từ mùa đông còn vương lại, nhưng lại có cái ấm áp, tràn ngập của khí xuân, hơi xuân. Những âm thanh như tiếng nhạn kêu, tiếng trống chèo, những câu hát huê tình,…hoà quyện trong làn hương ấm áp của nhang trầm, đèn nến, nhất là cái ấm áp toả ra từ không khí gia đình đoàn tụ…Tất cả gợi lên một nét hương sắc không thể nào phai trong tâm hồn của người xa xứ.
Câu 1 (trang 177 sgk ngữ văn 7 tập 1)
Bài văn tả cảnh sắc và không khí mùa xuân ở Hà Nội
+ Nêu hoàn cảnh và tâm trạng của tác giả:
+ Tác giả viết khi đang sinh sống xa quê hương, ở Sài Gòn trước 1975 trong sự kiểm soát của Mĩ Ngụy
+ Tình cảm nhớ thương da diết của người con xa quê hương miền Bắc
Câu 2 (trang 177 sgk ngữ văn 7 tập 1)
Bài văn có thể chia làm 3 đoạn:
+ Phần 1 (từ đầu… mê luyến mùa xuân): Những cảm nhận về quy luật tình cảm của con người đối với mùa xuân
+ Phần 2 (tiếp… mở hội liên hoan): Những rung động, cảm nhận tinh tế về cảnh sắc, không khí mùa xuân ở Hà Nội, đất Bắc
+ Phần 3 (còn lại): Cảnh sắc và không khí mùa xuân sau ngày rằm tháng giêng.
Mạch cảm xúc: đi từ quy luật tình cảm chung của con người tới những cảm nhận riêng về mùa xuân, cuối cùng là cảm nhận về tháng giêng, mạch cảm xúc được phát triển tự nhiên, logic
Câu 3 (trang 177 sgk ngữ văn 7 tập 1)
Cảnh sắc mùa xuân Hà Nội, mùa xuân đất trời:
+ Màu sắc đặc trưng: màu sông xanh, núi tím say mộng ước
+ Đường nét, hình khối: Mưa riêu riêu, gió lành lạnh, đường sá không lầy lội, cái rét ngọt ngào
+ Âm thanh đặc trưng: tiếng nhạn kêu, tiếng trống chèo, tiếng hát của những cô gái huê tình
+ Hình ảnh con người:
+ Nghi lễ đón xuân: thắp nến trên bàn thờ Phật Thánh, bàn thờ tổ tiên
+ Gia đình: sum họp, đoàn viên, trên kính dưới nhường
+ Lòng người trong ngày xuân: thấy ấm áp, vui như mở hội
→ Những nét đẹp trong cuộc sống nghĩa tình của con người, đó là nét đẹp văn hóa của người Hà Nội
b, Tác giả nêu bật sức sống của con người trong mùa xuân bằng những hình ảnh gợi cảm, với những hình ảnh so sánh cụ thể: “ Ngồi yên không chịu được… nhựa sống của con người căng lên như máu, những cặp uyên ương đứng cạnh”
+ Cảm nhận rõ rệt về cái rét: “cái rét ngọt ngào, không tê buốt căm căm nữa”
c, Ngôn ngữ của đoạn văn được chắt lọc tinh tế, kĩ càng. Hình ảnh so sánh cụ thể, mới lạ, cũng cách cảm, cách nghĩ sáng tạo, kết hợp với giọng điệu vừa sôi nổi, thiết tha gợi nhiều ấn tượng.
Câu 4 (trang 177 sgk ngữ văn 7 tập 1)
Đoạn văn còn lại, tác giả đặc tả những điểm riêng biệt của trời đất, thiên nhiên, không khí mùa xuân sau ngày rằm tháng giêng
- Cảnh sắc thiên nhiên:
+ Đào hơi phai nhưng nhụy vẫn còn phong
+ Cỏ: không xanh mướt nhưng nức mùi thơm man mác
+ Mưa xuân: thay thế mưa phùn
+ Bầu trời: hiện lên những làn sáng hồng hồng
- Không gian sinh hoạt:
+ Bữa cơm: trở về sự giản dị thường ngày, thịt mỡ, dưa hành đã hết
+ Cánh màn điều treo trên bàn thờ treo ở bàn thờ ông bà ông vải đã được hạ xuống
+ Các trò vui ngày Tết: tạm kết thúc nhường chỗ cho cuộc sống thường nhật
→ Hoạt động của con người dần trở về nhịp thường nhật, cảnh vật có chút biến chuyển, thay đổi nhưng vẫn đẹp và say đắm lòng người bởi sự mới mẻ
Việc tái hiện cảnh sắc, không khí mùa xuân để khẳng định tình yêu, nỗi nhớ luôn thường trực trong lòng tác giả, làm sống dậy nhiều nỗi niềm trong tâm hồn tác giả bằng ngòi bút tinh tế, nhạy cảm
Câu 5 (trang 178 sgk ngữ văn 7 tập 1)
Nỗi nhớ da diết của con người xứ Bắc xa quê, tác giả đã thể hiện chân thực cảnh mùa xuân miền Bắc với những ấn tượng chân thật, êm đềm, ngọt ngào.
+ Những cảm nhận tha thiết, tinh tế chỉ có được ở những người yêu quê hương tha thiết
+ Cảnh mùa xuân trên đất Bắc là sự giao hòa trọn vẹn của trời đất, con người.
(1) ) Cảnh sắc và không khí mùa xuân Hà Nội - đất Bắc, hiện lên trong nỗi nhớ của "người con xa xứ có những nét rất riêng, đó là:
Tác giả đã gợi tả được cái đặc trưng của thời tiết và khí xuân miền Bắc với “mưa rêu rêu, gió lành lạnh”. Những âm thanh quen thuộc: tiếng nhạn kêu trong đêm xanh, tiếng trống chèo, những câu hát huê tình. Không khí của mùa xuân nồng ấm trong khung cảnh gia đình, đầm ấm đoàn tụ với bàn thờ tố tiên, đèn nến, hương trầm và tình cảm gia đình đầm ấm yêu thương. Những hình ảnh, âm thanh được lựa chọn đặc sắc đã gợi lên một mùa xuân không thể nào phai trong tâm hồn của người xa xứ.(2) Sức sống diệu kì của mùa xuân trong thiên nhiên và lòng người thể hiện ở:
Sức sống của thiên nhiên: máu căng lên trong lộc nai, mầm non của cây cối nằm im không chịu được trồi ra thành những cái lá nhỏ li ti, những con vật nằm thu hình một nơi nay bò ra để nhảy nhót kiếm ăn… Sức sống của con người: nhựa sống trong người căn lên, tươi trẻ hơn, thêm khao khát yêu thương. Tình cảm của tác giả: mở của đi ra ngoài thấy thú giang hồ êm ái như nhung, lòng mình say sưa một cái gì đó.=> Mùa xuân trong mắt Vũ Bằng là mùa xuân trẻ trung, mùa xuân của thương yêu đằm thắm.
=> Em có đồng cảm với tác giả khi cảm nhận mùa xuân vì em cảm thấy mùa xuân là mùa của sự tươi mới , trẻ trung , đầy sức sống .
(3) Nhớ về mùa xuân, Vũ Bằng không chỉ dừng lại ở cảnh vật mà còn hướng ngòi bút của mình đến không khí gia đình đón tết:"nhang trầm, đèn nến,... không khí gia đình đoàn tụ êm đềm... làm cho lòng anh ấm lạ ấm lùng". Những câu văn ấy chứa đựng nỗi nhớ của một người con xa xứ, luôn nhớ về quê hương, nhớ về gia đình, nhớ không khí đầm ấm an nhiên sum họp vui vầy bên những người thân thương nhất.
(4) Điền vào các ô như sau:
Nghệ thuật:
Sử dụng từ ngữ: giàu hình ảnh, giàu tình cảm Giọng điệu: : trìu mến, thiết tha Hình ảnh: chọn lọc, giàu ý nghĩa Biện pháp tu từ: : điệp ngữ, so sánh, nhân hóa